每个映射的任务运行中的差异,其中包含在mapred-site.xml中配置的任务

时间:2014-04-26 10:15:20

标签: hadoop mapreduce

通过提供以下命令,我停止了在伪分布式模式下运行的所有代理。

stop-all.sh

然后我将“mapred-site.xml”的配置文件更改为1 Map Task

<configuration>
<property>
  <name>mapred.job.tracker</name>
  <value>localhost:54311</value>
</property>
<property>
  <name>mapred.tasktracker.map.tasks.maximum</name>
  <value>1</value>
</property>
<property>
  <name>mapred.tasktracker.reduce.tasks.maximum</name>
  <value>1</value>
</property>
</configuration>

你看我已经设置了1个MapTask和1个ReduceTask来运行。

然后我开始重新启动所有代理

start-all.sh

并运行map-reduce程序,但我仍然看到2个任务,而不是mapred-site.xml中配置的1个。

任务的屏幕截图如下所示,

enter image description here

为什么会出现这种差异,请指导我完成

谢谢

1 个答案:

答案 0 :(得分:1)

好的,所以这个属性mapred.tasktracker.map.tasks.maximum告诉任务跟踪器一次可以运行的最大任务数(映射器任务)。基本上,您限制每个运行任务跟踪器的节点一次运行一个映射器。

如果你有10个节点,那么你应该可以并行运行10个映射器。

但是,如果您的作业需要2个映射器(完全基于输入数据的大小和块大小,除非您扩展inputformat)并且您只有一个节点,那么映射任务将在该节点上按顺序执行。

希望现在更清楚了。