当你调用/ etc / bin / hadoop jar myjar.jar myclass args
地图会同步减少作业吗?换句话说,只有在所有节点上的所有地图减少作业完成后,调用才会返回吗?
在发送荷兰工作的情况下,这尤其重要。我想知道在命令返回时是否已完成站点爬网。
答案 0 :(得分:1)
是的,它是一个同步调用,因为对于最终结果,您必须等到所有节点上的作业完成。事实上,我会说这也取决于你如何编写工作,即你可以添加一些代码行来打印你在终端上抓取的当前状态,通过它你将获得爬行的实时状态更新。 但要查看爬网的最终输出,您必须等到工作完成。
答案 1 :(得分:0)
不,Map Reduce
工作没有同时完成。
第一个Mapper类完成其工作,然后mapper的输出将提交到reducer阶段(在shuffling,sorting,combing
之间)。
在映射器阶段,节点将其结果共享给NameNode,如果namenode找到完整输出,那么它将告诉mapper停止映射器阶段。
然后开始减少阶段。