Hadoop MR应用中的动态减速器数量

时间:2012-06-27 11:47:15

标签: hadoop mapreduce

提交作业后是否有任何方法可以设置减少任务的数量?例如,如果我需要根据开始字母表收集英语单词,我可以直接将减少任务的数量设置为26.但是如果出现我无法预先确定所需减速器数量的情况,是否有任何方法可以实现需求?这里的需求与集群上的节点数无关,它只取决于正在处理的密钥。例如,减速器的数量是每次满足新密钥时增加1。 在此先感谢任何支持。

1 个答案:

答案 0 :(得分:2)

  

提交作业后是否有任何方法可以设置减少任务的数量?

没有

  

例如,如果我需要根据开始字母表收集英语单词,我可以直接将reduce任务的数量设置为26。

即使在上面的场景中,您也不需要26个减速器,但只需要1个减速器。 Hadoop框架为每个密钥一次又一次地调用reduce函数。 MultipleOutputFormat可用于根据键/值对(第一个字母)将单词写入不同的文件。

作业的缩减器数量的标准应该是它正在处理的数据量。另外,请记住减速器花费最多时间将决定完成工作的时间。