链接地图减少程序



我有一种情况,在一个POC期间,我想在一个Job中创建一个嵌套的MapReduce。就像映射M1 O/P到减速机R1 O/P然后R1输出到M2最终输出将得到M2或者我们可以用M2 O/P运行R2

单个作业ID - M1->R1->M2->R2…最终输出将在单个O/P文件中。

我们能没有Oozie吗?

您可以在Driver类中链接多个作业。首先,通过定义所有必需的配置,为第一个MapReduce创建一个作业。然后像往常一样调用:

job1.waitForCompletion(true);

等待任务完成。现在检查第一个作业的最终状态,是否失败或成功,以便进行适当的下一步操作。

如果第一个作业成功完成,那么以同样的方式启动下一个MapReduce。首先定义所需的参数,并使用以下命令启动作业:

job2.waitForCompletion(true);

重要的是第一个作业的输出路径将被输入到第二个作业。这是串行(顺序)作业链,因为两个作业将一个接一个地运行。

您还可以使用作业控制,其中可以按顺序执行多个map reduce作业。在你的例子中,有两个映射器和两个或一个还原器。您可以有两个map reduce作业,对于第二个作业,如果您不需要reducer,您可以使用set reducer的数量为零。

相关内容

  • 没有找到相关文章

最新更新