有人可以解释一下AM如何在集群内的节点上分配容器?

还要考虑使用用例,因为我们知道默认最小容器大小是1024 MB

考虑Hadoop Cluster <1-Master&3-Datanodes>

  • Namenode:master(3GB RAM,2个核心)

  • Datanodes:data1(512MB RAM,1 Core),

  • data2(512MB RAM,1 Core),

  • data3(1GB RAM,1 Core) .

  • 输入文件大小:"File" = 500MB,复制因子3(所有节点都包含所有块)

  • 默认块大小= 128 MB

因此“文件”将被分成4块

由于Repli.Factor = 3,所有节点都将具有所有4个块,即4个容器 .

默认最小容器大小为1024 MB

问题1:哪个datanode AM将分配Container?

问题2:Data1和Data2有512MB的RAM,这是否意味着AM永远不会在这些数据节点上分配容器???