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场景时可实现更好的性能,降低延迟。

相关推荐
Elastic 中国社区官方博客1 小时前
如何将数据从 AWS S3 导入到 Elastic Cloud - 第 3 部分:Elastic S3 连接器
大数据·elasticsearch·搜索引擎·云计算·全文检索·可用性测试·aws
Aloudata2 小时前
从Apache Atlas到Aloudata BIG,数据血缘解析有何改变?
大数据·apache·数据血缘·主动元数据·数据链路
不能再留遗憾了2 小时前
RabbitMQ 高级特性——消息分发
分布式·rabbitmq·ruby
水豚AI课代表2 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
茶馆大橘2 小时前
微服务系列六:分布式事务与seata
分布式·docker·微服务·nacos·seata·springcloud
材料苦逼不会梦到计算机白富美5 小时前
golang分布式缓存项目 Day 1
分布式·缓存·golang
拓端研究室TRL5 小时前
【梯度提升专题】XGBoost、Adaboost、CatBoost预测合集:抗乳腺癌药物优化、信贷风控、比特币应用|附数据代码...
大数据
黄焖鸡能干四碗5 小时前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
想进大厂的小王5 小时前
项目架构介绍以及Spring cloud、redis、mq 等组件的基本认识
redis·分布式·后端·spring cloud·微服务·架构
Java 第一深情5 小时前
高性能分布式缓存Redis-数据管理与性能提升之道
redis·分布式·缓存