MPP和hadoop

同样都可以处理大规模数据的MPP数据库架构与Hadoop体系架构属于不同的++技术++体系,二者没有直接的相关性,却常常被放在一起进行比较。特别是在企业数据仓库建设中,MPP架构与Hadoop架构代表两类典型的技术路线选型,事实上,在2015年左右甚至有人认为基于Hadoop体系的数仓将彻底取代基于MPP数据库的数仓。
**  1. 设计思路对比**
  两类系统运行的硬件架构是相同的,都是普通服务器组成的集群,但从资源管理角度来说,它们并行化软件实现的设计思路却是相反的。
  MPP架构相当于对单机的各类资源进行垂直综合管理,再将多个单机系统横向连接进行集成,可以说是先垂直后水平。
  Hadoop架构相当于将所有机器的存储资源与计算资源抽象出来,分开管理,再进行组件级的垂直集成,可以说是先水平后垂直。
  MPP与Hadoop架构对比如图1所示。

▲图1 MPP与Hadoop架构对比
  具体分析如下:
  MPP架构是将许多单机++数据库++通过网络连接起来,相当于将一个个垂直系统横向连接,形成一个统一对外服务的分布式数据库系统,每个节点由一个单机数据库系统独立管理和操作该节点所在物理机上的所有资源(CPU、内存、磁盘、网络),节点内系统的各组件间的相互调用不需要通过控制节点,即对控制节点来说,每个节点的内部运行过程相对透明。
  Hadoop架构是将不同的资源管理与功能进行分层抽象设计,每层形成一类组件,实现一定程度的解耦,包括存储资源管理、计算资源管理、通用并行计算框架、各类分析功能等,在每层内进行跨节点的资源统一管理或功能并行执行,层与层之间通过接口调用,相互透明,节点内不同层的组件间的相互调用需要由控制节点掌握或通过控制节点协调,即控制节点了解每个节点内不同层组件间的互动过程。
  2. 优缺点对比
  MPP架构的优缺点总结如下:
1、支持标准++SQL++,每个节点都有丰富的事务处理和管理功能;
2、资源管理精细;
3、更适合预知数据结构模型的中等规模的固定模式数据管理;
4、集群规模调整要求较多,增减节点时通常需要停机,且有的系统只能增加不能减少;
5、延迟小,相对吞吐量一般,单节点缓慢会拖累整体性能;
6、表++记录++进行水平分割存储,方法通常包括一致性哈希(Consistent Hashing)、循环写入(Round Robin),但容易产生数据热点。

1、Hadoop架构的优缺点总结如下:

1、每个节点功能简单,不具备丰富的数据管理功能,不支持事务;
2、数据更新采用追加方式实现,同等数据量处理需要的资源更多;
3、可以不用预先了解数据的格式与内容;
4、扩展性好,支持集群规模更大,能动态扩容,支持扩充仅用于计算的节点;
5、延迟高、吞吐量大、容错性(Failover)好。
总体来说,Hadoop架构在数据量较低的情况下,运行速度远不及MPP架构,但数据量一旦超过某个量级,Hadoop架构在吞吐量方面将非常有优势。有些++大数据++数据仓库产品也采用混合架构,以融合两者的优点,例如Impala、Presto等都是基于HDFS的MPP分析引擎,仅利用HDFS实现分区容错性,放弃MapReduce计算模型,在面向OLAP场景时可实现更好的性能,降低延迟。

相关推荐
计算机毕设定制辅导-无忧学长19 分钟前
RabbitMQ 快速上手:安装配置与 HelloWorld 实践(二)
分布式·rabbitmq·ruby
杰克逊的日记25 分钟前
Flink运维要点
大数据·运维·flink
啾啾Fun1 小时前
【Java微服务组件】分布式协调P1-数据共享中心简单设计与实现
java·分布式·微服务
hnlucky2 小时前
Windows 上安装下载并配置 Apache Maven
java·hadoop·windows·学习·maven·apache
梦想画家4 小时前
Scrapy进阶实践指南:从脚本运行到分布式爬取
分布式·scrapy·数据工程
markuszhang4 小时前
Elasticsearch 官网阅读之 Term-level Queries
大数据·elasticsearch·搜索引擎
东阳马生架构5 小时前
Seata源码—5.全局事务的创建与返回处理二
分布式·seata·分布式事务
Hello World......5 小时前
Java求职面试:从核心技术到大数据与AI的场景应用
大数据·java面试·技术栈·互联网大厂·ai服务
掘金-我是哪吒6 小时前
分布式微服务系统架构第133集:运维服务器6年经验,高并发,大数据量系统
运维·服务器·分布式·微服务·系统架构
python算法(魔法师版)7 小时前
.NET NativeAOT 指南
java·大数据·linux·jvm·.net