MPP 架构?

MPP,即大规模并行处理(Massively Parallel Processing)架构,是一种将计算和存储分布在多个计算节点上的数据处理架构。

MPP系统是由许多松耦合的处理单元组成,这里指的是处理单元而非处理器。每个处理单元内的 CPU 都有自己私有的资源,如总线、内存、硬盘等,且都有操作系统和管理数据库的实例副本。这种结构最大的特点在于不共享资源(share-nothing)。

MPP架构有如下特点:Share Nothing、节点之间数据不共享,只有通过网络连接实现协同;每个节点有独立的存储和内存;数据根据某种规则(如 Hash)散布到各个节点;计算任务也会发布到各个节点并行执行,最后再将结果聚合到整体返回;用户使用时会看做整体;MPP 数据库(如 GreenPlum)往往优先考虑 C 一致性,然后是 A 可用性,最后考虑 P 分区容忍;目前被并行数据库广泛采用,一般通过 scan、sort 和 merge 等操作符实时返回查询结果。

MPP架构的优势包括高性能,可利用多个处理器同时处理数据,从而实现高吞吐量和低延迟;横向扩展能力强,可通过增加计算节点、CPU 和存储等硬件资源来实现;需要精细的管理和调度机制,更好地管理数据流和任务执行过程,并优化数据备份、恢复、压缩和数据清洗等过程;具有高可用性,采用分布式的设计,当某个节点发生故障时,系统能够自动切换到其他节点。

然而,MPP架构也有一些劣势。很难高可用,影响可用性和可靠性,因为数据按某种规则如 HASH 已经散布到了各个节点上;节点数等于任务并行数,影响扩展性ÿ

你可能感兴趣的:(架构)