在map reduce框架中映射阶段实现

时间:2013-02-01 14:40:11

标签: hadoop mapreduce

我搜索了很多,我知道在每个map任务中,当缓冲区的内容到达阈值时,一个线程根据reduce的数量对数据进行分区。这里减少数字的作用是什么?为什么在map中发生分区?它如何帮助映射阶段?在排序后,线程会将内容溢出到磁盘。 怎么会发生?我不能理解溢出的意思..... 感谢。

1 个答案:

答案 0 :(得分:0)

映射需要在reducers轮询时对数据进行分区,并从每个映射器中提取与reducer相关的所有数据。

如果你想象它反过来 - reducer从每个map中提取所有输出然后你将每个mapper的所有数据输出发送到每个reducer - 非常低效。

因此,通过在映射器中进行分区,reducer能够查询并撤回每个映射器所需的数据。