启动Hadoop后,正在运行两种类型的守护程序进程。一个是名称节点上名为namenode的守护进程,另一个是数据节点上名为datanode的守护程序进程。我确信当通过" hdfs dfs"将来自本地文件系统的大文件加载到HDFS时,会使用它们。命令。
但是当Hadoop MapReduce作业运行时它是否也被使用?我的理解是否定的,但也许它也在Shuffle期间使用,当地图函数的输出可能从一个datanode转移到另一个datanode时。
答案 0 :(得分:0)
是。名称节点和数据节点一直在运行。
启动MapReduce作业时,根据作业,可以生成'n'个mapper和reduce任务(由拆分数决定)。
每个Mapper读取输入的一部分(拆分)。因此,在从HDFS读取输入时,涉及名称节点/数据节点。
在Shuffle and Sort阶段,Reducers直接从不同的Mapper读取数据。但是,当处理完成时,Reduce任务必须将输出写入HDFS。同样,名称节点/数据节点参与将数据写入HDFS。