对mapreduce进行随机播放和排序

时间:2016-09-18 21:01:46

标签: hadoop mapreduce

我仔细阅读了权威指南和网络上的其他一些链接,包括here

我的问题是

  

洗牌和分拣到底发生了什么?

根据我的理解,它们发生在映射器和缩减器上。但是有些链接提到了在映射器上进行重排并在减速器上进行排序。

有人可以确认我的理解是否正确;如果没有,他们可以提供我可以通过的其他文件吗?

1 个答案:

答案 0 :(得分:7)

<强>随机

MapReduce保证每个reducer的输入按键排序。系统执行排序和const&的过程称为shuffle。

<强>类别:

排序发生在MapReduce程序的各个阶段,因此可以存在于Map和Reduce阶段。

请看一下这个图表 enter image description here

在Map和Reduce阶段为上面的图片添加更多描述。

地图方:

当map函数开始产生输出时,它不会简单地写入磁盘。在Map输出写入磁盘之前,线程首先transfers map outputs to the reducers as inputs它们最终将被发送到。在每个分区中,divides the data into partitions corresponding to the reducers

减少方面:

当复制了所有地图输出后,reduce任务进入排序阶段(应该正确地称为合并阶段,因为排序是在地图侧执行的),它合并了地图输出,维护它们排序。这将在几轮中完成。

来源:Hadoop权威指南。