雷同都可以处置大规模数据的MPP数据库架构与Hadoop体系架构属于不同的技术体系,二者没有间接的相关性,却经常被放在一同启动比拟。特意是在企业数据仓库树立中,MPP架构与Hadoop架构代表两类典型的技术路途选型,理想上,在2年左右甚至有人以为基于Hadoop体系的数仓将彻底取代基于MPP数据库的数仓。
1. 设计思绪对比
两类系统运转的配件架构是相反的,都是普通主机组成的集群,但从资源治理角度来说,它们并行化软件成功的设计思绪却是相反的。
MPP架构相当于对单机的各类资源启动垂直综合治理,再将多个单机系统横向衔接启动集成,可以说是先垂直后水平。
Hadoop架构相当于将所无机器的存储资源与计算资源形象进去,分开治理,再启动组件级的垂直集成,可以说是先水平后垂直。
MPP与Hadoop架构对比如图1所示。
▲图1 MPP与Hadoop架构对比
详细剖析如下:
MPP架构是将许多单机数据库经过网络衔接起来,相当于将一个个垂直系统横向衔接,构成一个一致对外服务的散布式数据库系统,每个节点由一个单机数据库系统独立治理和操作该节点所在物理机上的一切资源(CPU、内存、磁盘、网络),节点内系统的各组件间的相互调用不要求经过控制节点,即对控制节点来说,每个节点的外部运转环节相对透明。
Hadoop架构是将不同的资源治理与性能启动分层形象设计,每层构成一类组件,成功必定水平的解耦,包含存储资源治理、计算资源治理、通用并行计算框架、各类剖析性能等,在每层内启动跨节点的资源一致治理或性能并行口头,层与层之间经过接口调用,相互透明,节点内不同层的组件间的相互调用要求由控制节点把握或经过控制节点协调,即控制节点了解每个节点内不同层组件间的互动环节。
2. 优缺陷对比
MPP架构的优缺陷总结如下:
表记载启动水平宰割存储,方法通常包含分歧性哈希(Consistent Hashing)、循环写入(Round Robin),但容易发生数据热点。
Hadoop架构的优缺陷总结如下:
总体来说,Hadoop架构在数据量较低的状况下,运转速度远不迭MPP架构,但数据量一旦超越某个量级,Hadoop架构在吞吐量方面将十分有好处。有些大数据数据仓库产品也驳回混合架构,以融合两者的好处,例如Impala、Presto等都是基于HDFS的MPP剖析引擎,仅应用HDFS成功分区容错性,丢弃MapReduce计算模型,在面向OLAP场景时可成功更好的性能,降落提前。