理论教育 大数据时代下的3.2MPP架构

大数据时代下的3.2MPP架构

时间:2023-06-28 理论教育 版权反馈
【摘要】:MPP海量并行处理架构目前在一体机中得到很好的应用,适应了大数据时代的要求。MPP架构由多个SMP服务器通过一定的节点互联网络进行连接,协同工作,完成相同的任务,从用户的角度来看是一个服务器系统。在MPP系统中,每个SMP节点也可以运行自己的操作系统、数据库等。因此,MPP在增加节点时性能基本上可以实现线性扩展。未来MPP服务器架构的并行处理能力更优越于SMP和NUMA,更适合于大数据时代下的复杂的数据综合分析与处理环境。

大数据时代下的3.2MPP架构

在大数据时代,商业服务器的系统架构也在发生着变化,从系统架构来看,目前的商业服务器大体可以分为三类,即对称多处理器结构SMP(Symmetric Multi-Processor)、非一致存储访问结构NUMA(Non-Uniform Memory Access),以及海量并行处理结构MPP(Massive Parallel Processing)。随着各类数据量的快速增长,大数据时代真正到来,传统的数据处理方式已经不能满足海量数据处理的实时性与实效性要求。MPP海量并行处理架构目前在一体机中得到很好的应用,适应了大数据时代的要求。

MPP架构由多个SMP服务器通过一定的节点互联网络进行连接,协同工作,完成相同的任务,从用户的角度来看是一个服务器系统。其基本特征是由多个SMP服务器(每个SMP服务器称为一个节点)通过节点互联网络连接而成,每个节点只访问自己的本地资源(内存、存储等),是一种完全无共享(Share Nothing)结构,因而扩展能力最好,理论上其扩展无限制,目前的技术可实现512个节点互联,数千个CPU进行扩展。目前,业界对节点互联网络暂无标准,如NCR的Bynet,IBM的SPSwitch,它们都采用了不同的内部实现机制。但节点互联网仅供MPP服务器内部使用,对用户而言是透明的。在MPP系统中,每个SMP节点也可以运行自己的操作系统数据库等。但和非一致存储访问结构的NUMA不同的是,它不存在异地内存访问的问题。换言之,每个节点内的CPU不能访问另一个节点的内存。节点之间的信息交互是通过节点互联网络实现的,这个过程一般称为数据重分配(Data Redistribution)。

MPP服务器需要一种复杂的机制来调度和平衡各个节点的负载和并行处理过程。目前一些基于MPP技术的服务器往往通过系统级软件(如数据库)来屏蔽这种复杂性。例如,NCR的Teradata就是基于MPP技术的一个关系数据库软件,基于此数据库来开发应用时,不管后台服务器由多少个节点组成,开发人员所面对的都是同一个数据库系统,而不需要考虑如何调度其中某几个节点的负载。(www.daowen.com)

MPP的节点互联机制是在不同的SMP服务器外部通过I/O实现的,每个节点只访问本地内存和存储,节点之间的信息交互与节点本身的处理是并行进行的。因此,MPP在增加节点时性能基本上可以实现线性扩展。MPP服务器中,每个节点只访问本地内存,不存在远程内存访问的问题。MPP数据库会把一个任务数据切分成不同的独立数据块,利用独立存储与CPU资源进行管理,把数据分配到不同的磁盘空间和不同的CPU单元

未来MPP服务器架构的并行处理能力更优越于SMP和NUMA,更适合于大数据时代下的复杂的数据综合分析与处理环境。当然,它需要借助于支持MPP技术的关系数据库系统来屏蔽节点之间负载平衡与调度的复杂性。另外,这种并行处理能力也与节点互联网络有很大的关系。显然,只有适应数据仓库环境的MPP服务器,且其节点互联网络的I/O性能非常突出,才能充分发挥整个系统的性能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈