码迷,mamicode.com
首页 > 其他好文 > 详细

MapReduce

时间:2016-01-03 18:14:42      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

 

1)处理的数据比较大,而且数据都是分布存储在datanode中。

2)由于数据量比较大,而java程序比较小,所以将程序放到每一个数据节点上执行会节省数据传输的时间。而且可以实现并行计算,提高效率。

 

mapreduce分为两个阶段:程序在每个节点上的计算和最终结果的汇总。

上面两步是map阶段

3)map阶段的数据需要汇总起来,做着部分工作的就是reduce。在其中一个节点上添加一个reduce程序,所有map程序的结构都汇总到这个节点上,由reduce程序进行处理。

4)由于map可能会比较多,一个reduce压力比较大,所以需要多加几个reduce,实现reduce的分布式,减少一个reduce的压力。

5)由于reduce有多个,所以又出现了节点上的map不知道汇总到哪个上的问题。所以就出现了分区。分区的原则是每个reduce处理的数据基本一样

MapReduce

标签:

原文地址:http://www.cnblogs.com/tzq9308/p/5096809.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!