• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Hadoop 和 MPP 作为数仓组件的区别

java 佚名 2年前 (2023-03-11) 44次浏览 已收录 0个评论

标签:数仓 Java 解决方案 Hadoop 查询 MPP 优化 节点

1,原理对比

MPP方案中的数据通常在节点之间拆分(分片),每个节点仅处理其本地数据。而且,每家都有专门为 MPP 解决方案开发的复杂而成熟的 SQL 优化器。它们都可以在内置语言和围绕这些解决方案的工具集方面进行扩展,支持地理空间分析、数据挖掘的全文搜索。在任务执行过程中,单一的 Executor 只处理一个单一的 task,因此可以简单直接将数据 stream 到下一个执行阶段。这个过程称为pipelining,它提供了很大的性能提升。而Hadoop 需要保存中间状态数据,IO存储速度拖慢了数据处理效率。

 MPP 方案: Teradata greenpalm  presta impala  

hadoop 批处理方案:  Mapreduce  ,  HIVE  , spark  

2,对比表格

对比项MPPHadoop
平台开放封闭和专有。对于某些技术,非客户甚至无法下载文档完全开源的供应商和社区资源可通过互联网免费获得
硬件选项许多解决方案都是使用供应商的设备的,您无法在自己的集群上部署软件。所有解决方案都需要特定的企业级硬件,例如快速磁盘、具有大量 ECC RAM 的服务器、10GbE/Infiniband 等。对硬件要求低,自己定制
可扩展性(节点)平均数十个节点,最多 100-200 个平均 100 个节点,最多数千个
可扩展性(用户数据)平均数十 TB,PB 为最大值平均数百 TB,最大数十 PB
查询延迟10-20 毫秒10-20 秒
查询平均运行时间5-7秒10-15分钟
查询最大运行时间1-2小时1-2周
查询优化复杂的企业查询优化器引擎被保存为最有价值的企业机密之一没有优化器或功能非常有限的优化器,有时甚至不是基于成本的
查询调试和分析代表性查询执行计划和查询执行统计信息,解释性错误消息OOM 问题和 Java 堆转储分析、集群组件上的 GC 暂停、每个任务的单独日志给你很多有趣的时间
价格每个节点数万到数十万美元每个节点免费或高达数千美元
最终用户的可访问性简单友好的 SQL 界面和简单的可解释的数据库内函数SQL 并不完全符合 ANSI,用户应该关心执行逻辑、底层数据布局。函数通常需要用Java编写,编译并放在集群上
用户受众业务分析师Java 开发人员和经验丰富的 DBA
单一作业冗余低,当 MPP 节点失败时作业失败高,只有节点管理作业失败,作业执行会失败
目标系统通用数仓系统专用数据处理引擎
供应商锁定典型
建议的最小集合大小任何任何
最大并发数十到数百个查询根据集群能力,任何
技术可扩展性仅使用供应商提供的工具与引入的任何全新开源工具(Spark、Samza、Tachyon 等)混合使用
DBA 技能水平要求平均 RDBMS DBA很高,具有良好的 Java 和 RDBMS 背景
解决方案实施复杂性一般很高

对比结论:

MPP:  商业化软件,服务更好, 查询效率和优化器更好,  价格更高,生态扩展性差,开发难度低。

hadoop 批处理方案: 开源方案, 生态扩展性好,开发难度高。对于海量数据,处理低价值密度数据更适合。

标签:数仓,Java,解决方案,Hadoop,查询,MPP,优化,节点

来源: https://www.cnblogs.com/gao1261828/p/16400128.html


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Hadoop 和 MPP 作为数仓组件的区别

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址