我对hadoop非常陌生,最近在ubuntu的virtualbox中配置了hadoop,这里的name节点和resource manager是独立的机器,还有3个seprate数据节点和一个client节点。
在阅读了更多的文章之后,我了解到mapreduce作业是在多个节点上并行运行的,
为了我的理解,我编写了一个mapreduce程序,并将系统的主机名作为map函数中的键,这是为了我想了解并行性
我已经将数据加载到hdfs,200mb的数据块大小为64mb,确认3个datanode有块
在导出jar并使用yarn-jar和hadoop-jar从客户机运行之后,我的期望是在reducer中获得三个datanodes名称,但是它显示了客户机系统名称
请您解释一下这个执行(hadoopjar)是如何工作的,它是否在所有三个节点上运行我的mapreducejar,如果是,那么为什么它会显示客户机主机名而不是三个datanode
暂无答案!
目前还没有任何答案,快来回答吧!