资源管理器何时与名称节点联系,在代码中的哪里可以找到它?

时间:2018-12-06 20:32:02

标签: hadoop mapreduce hdfs yarn resourcemanager

我的问题与实际代码更相关。我正在使用Hadoop 2.7.7。

我似乎理解,在客户端提交了一个应用程序之后,资源管理器必须分配一个应用程序主机来处理该应用程序。

这时,当资源管理器与名称节点进行通信以获取处理所需文件的元数据时,此通信位于哪个包和类中?

编辑: 目前,我正在包org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo中查看FifoScheduler.java。私有无效方法assignContainers(FiCaSchedulerNode node)从fifo应用程序列表中选择了该应用程序,这些应用程序要求为该节点启动容器。因此,从逻辑上讲,我相信,当fifoscheduler希望从fifo列表中选择应用程序时,RM在列表中已经具有有关应用程序所需的文件/文件位置的信息。我在FifoScheduler.java中查看了前面提到的assignContainers()方法的调用层次结构中的所有方法,找不到关于RM何时何地接收有关应用程序所需文件(或文件元数据)信息的线索。

这是我能描述的最好的代码。如果您需要任何其他信息,我们将很乐意提供。如果不清楚,我深表歉意。

0 个答案:

没有答案