MapReduce和Tez比较
所属分类 bigdata
浏览量 1402
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。
Map(映射) + Reduce(归约)
MapReduce 离线计算框架,将一个算法抽象成Map和Reduce两个阶段进行处理,适合数据密集型计算。
Spark 基于map reduce算法实现的分布式计算,Job中间输出和结果可以保存在内存中,不需要读写HDFS,适用于数据挖掘与机器学习等需要迭代计算的场景
Tez
基于Hadoop Yarn之上的DAG(有向无环图,Directed Acyclic Graph)计算框架。
把Map/Reduce过程拆分成若干个子过程,可以把多个Map/Reduce任务组合成一个较大的DAG任务,
减少Map/Reduce之间的文件存储,合理组合其子过程,减少任务运行时间
Tez 开源的支持DAG作业的计算框架,源于MapReduce框架,
核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output,
Reduce被拆分成Input、Shuffle、Sort、Merge、Processor和Output等,
分解后的元操作可以任意灵活组合,产生新的操作,这些操作经过一些控制程序组装后,形成一个大的DAG作业。
运行在YARN之上
适用于DAG(有向图)应用( Impala Dremel Drill 等)
Tez将多个有依赖的作业转换为一个作业(这样只需写一次HDFS,且中间节点较少),提升DAG作业的性能
Hadoop HDFS 文件存储 ,Yarn 资源管理
在上面运行MapReduce、Spark、Tez等计算框架。
上一篇
下一篇
联合索引与最左匹配原则
Jedis客户端分片机制
一致性hash与treemap
redis 主从 哨兵 集群机制
CDH组件版本查看
华宝油气基金