【发布时间】:2017-03-17 20:52:15
【问题描述】:
除了节假日,我们每天都有源文件到达 hdfs。 我们的 oozie 协调员每天开始观看这些文件。我不希望 oozie 在定义的假期运行。怎么做。如果是假期,协调器不应超时。
【问题讨论】:
-
我现在正在考虑的一个解决方案是将工作流作为每天的第一个 wf 来检查今天是否是假期(通过外部 api 调用,搜索假期文件)。如果是,它会将所有工作流协调器(bundle)的暂停时间更新到今天(为了找到所有协调器,我们需要一个java api操作来收集范围内的所有协调器/捆绑器jobid),使用命令或api,例如作为 oozie 工作 -oozie localhost:11000/oozie -change 14-20090525161321-oozie-joe -value pausetime=2011-12-01T05:00Z
-
或者,使用额外的 WF 在节假日生成一组空文件,以便文件触发的 WF 可以启动并不做任何重要的事情并更新其状态。照常营业。
-
生成额外文件可能不起作用。因为我们可能对源文件夹具有只读权限。空文件也可能触发误报
-
看起来你陷入了一个复杂的混乱之中。玩得开心!