并非所有节点都在群集中使用

时间:2016-09-15 02:17:32

标签: hadoop mapreduce yarn hdinsight

我有一个由YARN管理的30节点Hadoop MR2集群。目前有10个Oozie工作,每个工作都运行一个Map程序。我注意到30个节点中只有11个实际被使用;只有11个节点有容器运行Map程序。

我希望每个节点至少有一个容器在运行。为什么不是这样?是由于输入拆分,并且根据我的HDFS块大小设置,输入数据最好分成只有11个节点?如果是这种情况,调整块大小以便利用所有节点会更优化吗?

1 个答案:

答案 0 :(得分:2)

根据请求,资源管理器将在群集中分配所需的资源。这些资源将用于运行地图减少作业的容器。

如果有足够的资源,数据节点可以托管多个容器。 不要忘记,在hadoop中,计算是移动到数据而不是相反。运行mapreduce作业的数据节点很可能是存储正在处理的数据的数据节点。 输入拆分(取决于数据块)不会直接影响计算中涉及的主机。

认为所有节点都应该运行是个坏主意。最好使用大数据是尽可能减少数据。