称为减速器的次数

时间:2014-12-23 13:33:55

标签: hadoop mapreduce

我只想知道在map reduce程序中调用reducer的次数。 我所知道的是,映射器的数量等于输入拆分的数量,即对于每个输入拆分1个映射器运行并且每个映射器的o / p被传递给reducer,因此它被逐个传递或者它得到所有的数据一次处理并处理数据(减少数据),所以我只想知道减速器的流量或工作情况。

3 个答案:

答案 0 :(得分:2)

对于每个唯一键,通常会调用一次reducer,但是您可以指定GrouperComparator(例如,用于二级排序),然后对每组键调用一次reducer,由GrouperComparator确定。

虽然日志消息似乎暗示reduce步骤在映射器全部完成之前开始,但是在所有映射器完成之前,不会调用reducer。

答案 1 :(得分:0)

'理想情况下'减速器阶段可以在第一个映射器成功完成后立即开始。

您想引用类似的问题:when-do-reduce-tasks-start-in-hadoop

答案 2 :(得分:0)

  • 映射器的数量取决于输入分割的数量。
  • 减少者的数量由用户设定。

您可以指定:

mapreduce.job.reduces=N

如果需要,可以设置0 reducer。