Java 管道化hadoop映射减少作业
我有五个map reduce,每个map reduce分别运行。我想把它们全部用管道输送到一起。所以,一个作业的输出将转到下一个作业。目前,我编写了shell脚本来执行它们。有没有一种用java编写的方法?请提供一个例子 谢谢您可能会发现这是将这些作业链接在一起的最简单方法。对于更复杂的工作流,我建议您签出。您可能会发现这是将这些作业链接在一起的最简单方法。对于更复杂的工作流,我建议签出。您好 我也有类似的要求 一种方法是 提交第一个作业后,执行以下操作Java 管道化hadoop映射减少作业,java,programming-languages,hadoop,mapreduce,Java,Programming Languages,Hadoop,Mapreduce,我有五个map reduce,每个map reduce分别运行。我想把它们全部用管道输送到一起。所以,一个作业的输出将转到下一个作业。目前,我编写了shell脚本来执行它们。有没有一种用java编写的方法?请提供一个例子 谢谢您可能会发现这是将这些作业链接在一起的最简单方法。对于更复杂的工作流,我建议您签出。您可能会发现这是将这些作业链接在一起的最简单方法。对于更复杂的工作流,我建议签出。您好 我也有类似的要求 一种方法是 提交第一个作业后,执行以下操作 Job job1 = new Job(
Job job1 = new Job( getConf() );
job.waitForCompletion( true );
然后使用
if(job.isSuccessful()){
//start another job with different Mapper.
//change config
Job job2 = new Job( getConf() );
}
嗨
我也有类似的要求
一种方法是
提交第一个作业后,执行以下操作
Job job1 = new Job( getConf() );
job.waitForCompletion( true );
然后使用
if(job.isSuccessful()){
//start another job with different Mapper.
//change config
Job job2 = new Job( getConf() );
}
Oozie是你的解决方案。您可以通过Oozie的action标签提交map reduce类型的作业、蜂巢作业、猪作业、系统命令等
它甚至还有一个协调器,充当您工作流程的cron。Oozie是您的解决方案。您可以通过Oozie的action标签提交map reduce类型的作业、蜂巢作业、猪作业、系统命令等
它甚至有一个协调器,充当您工作流程的cron。另一种可能性是,它也在Hadoop之上提供了一个抽象层:它似乎提供了与Hadoop概念密切合作的类似组合,但让使用Oozie工作流调用Pig脚本所获得的-Hadoop-do-M/R-heavy提升,它也在Hadoop之上提供了一个抽象层:它似乎提供了与Hadoop概念密切合作的类似组合,但让Oozie工作流调用Pig脚本时所得到的-Hadoop-do-M/R-heavy提升。对于您的用例,我认为Oozie会很好。Oozie是一个工作流调度器,您可以在其中编写不同的操作(可以是map reduce、java、shell等),以执行一些计算、转换、充实等。对于这种情况: 措施A:i/p输入o/p A 行动B:i/p a o/p B 措施C:i/p b o/p C(最终输出) 您最终可以在HDFS中持久化c,并可以决定持久化或删除中间输出
如果您想在一个动作中完成所有三个动作的计算,那么可以使用级联。通过他们的官方文档,您可以更好地了解层叠,您也可以参考我的博客:关于您的用例,我认为Oozie会很好。Oozie是一个工作流调度器,您可以在其中编写不同的操作(可以是map reduce、java、shell等),以执行一些计算、转换、充实等。对于这种情况: 措施A:i/p输入o/p A 行动B:i/p a o/p B 措施C:i/p b o/p C(最终输出) 您最终可以在HDFS中持久化c,并可以决定持久化或删除中间输出 如果您想在一个动作中完成所有三个动作的计算,那么可以使用级联。通过他们的官方文档,您可以更好地了解层叠,也可以参考我的博客: