赞
踩
优点:
1.MR易于编程,它提供一些简单统一的接口,可以放程序猿完成一个分布式程序,这个分布式程序可以运行在大量廉价的PC机器上.
2.良好的扩展性:当计算资源不能满足的时候,可以通过简单的增加启动来扩展计算能力
3.高容错性:假如一台机器挂了,它可以上面的计算任务转移到另外一个节点上,不会影响任务导致失败,这个过程需要人工干涉,后期版本的Hadoop提供自动干预
4.MR适合的是离线数据处理
缺点:
1.MR不适合实时计算,因为内部计算逻辑,所以MR不能以最快的速度得到结果
2.MR不适合计算流式,不适合计算实时数据(动态的数据),MR适合计算静态数据(固定数据)
3.MR中没有涉及一个逻辑DAG(有向无环图),每个MR作业的输出结果都会写到磁盘,就会造成大量的IO,会导致性能下降
内存中进行Partition(分区),默认是HashPartition
有多少个分区就会
有多少个reducetask
目的是将map的结果分给不同的reducer,有几个Partition就有几个reduce
排序分组结束之后,相同的key就在一起组成了一个类表,如果设置过Combiner,就合并数据,减少写磁盘 Map端的shuffle完毕,数据都有序的存放到磁盘中,等待reducer来获取
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。