Hadoop - Oozie:检查现有的oozie工作流程是否正在运行

时间:2015-06-13 14:31:35

标签: hadoop oozie

我有oozie协调员工作,工作时间为上午11点,下午12点30分,下午4点,下午7点和下午9点30分。这些协同工作的工作流程是相同的,但它们在不同的时间运行,没有特定的频率。如果频率相同,我会用一个协调员的工作来完成它。

我的问题是,我们如何知道协调员的工作仍在运行,并让其他协调员工作等待/睡觉,直到现有工作正在运行?我们可以通过oozie或者需要编写单独的oozie API / JavaScript或Shell脚本来检查它吗?

谢谢, Asmath。

1 个答案:

答案 0 :(得分:0)

您可以通过使用协调员的<input-events>标记来同步不同协调员中工作流的执行。

例如,您可以创建一个类似

的目录
/some/hdfs/dir/coordA-status/SUCCESS-2016-01-26 

在每次成功运行工作流A结束时由协调员A运行。

然后,您可以使该目录的存在成为协调员B通过<dataset><input-events>标签运行的条件。