1

映射器和映射任务有什么区别?同样,reducer 和 reduce 任务?此外,在执行 mapreduce 任务期间如何确定 mapper、maptasks、reducers、reducetasks 的数量?如果有的话,给出它们之间的相互关系。

4

1 回答 1

1

简单的 map 任务就是 Mapper 的一个实例。Mapper 和 reducer 是 mapreduce 作业中的方法。

当我们运行 mapreduce 作业时,生成的 map 任务的数量取决于输入中的块数(块数取决于输入拆分)。然而,reduce 任务的数量可以在 mapreduce 驱动程序代码中指定。可以通过在作业配置对象中设置属性 mapred.reduce.tasks 来指定,org.apache.hadoop.mapreduce.Job#setNumReduceTasks(int reducerCount);也可以使用方法。

在旧的 JobConf APIsetNumMapTasks()方法中有。但是setNumMapTasks()在新 API 中删除了方法org.apache.hadoop.mapreduce.Job,映射器数量的含义应基于输入拆分来计算。

于 2014-03-25T05:37:59.803 回答