如果reducer的数量大于datanode会发生什么

polhcujo  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(327)

如果我有3个datanode,我将reducer任务的数量设置为4,在这种情况下发生了什么?第四个将一直待命,直到其中一个datanode完成它的reducer任务?或者其中两个将同时在同一数据节点上运行?

hiz5n14c

hiz5n14c1#

reduce任务不依赖于datanodes,它们依赖于分配给特定节点的插槽数。tasktracker负责在群集中任何节点的这些插槽上运行任务。每个节点可以有多个插槽,因此每个节点可以运行多个reduce任务。

oipij1gg

oipij1gg2#

除了chaos的答案之外,如果您将reduce task的数量设置为大于集群中reduce task的插槽数量,那么只要前面的reduce插槽没有被占用,剩余的reduce task就会运行。

相关问题