我对 Hadoop 非常陌生,尤其是对 Hadoop 作业调度。这是我想要做的。
我有 2 个流程,每个流程都有一个 Hadoop 作业。我可以自由地将这些流程放在同一个项目或不同的项目中。我不希望 Hadoop 作业在集群上同时运行,但我也想确保它们交替运行。
例如 flow_1(使用 hadoop_job_1)运行并完成 -> flow_2(使用 hadoop_job_2)运行并完成 -> flow_1(使用 hadoop_job_1)运行并完成等等。
当然,我也想优雅地处理特殊情况。例如 flow_1 完成了,但是 flow_2 还没有准备好,那么如果 flow_1 准备好了,它就有机会再次运行,如果 flow_1 失败,flow_2 仍然可以继续运行,等等。
我想知道我可以探索哪些调度程序能够做到这一点。
我们正在使用 MapR。
谢谢