我有一个每小时的Oozie工作流程,我希望这个工作流程能够在将来的1小时到168小时之间等待另一个数据集的任何实例。
例如,如果我的工作流计划在2018年7月1日00:00的标称时间,那么我希望它在[2018-07-01 01 < / strong>:00,2018-07-07 23:00](包含)。
为具体起见,假设我的数据集是这样定义的:
node {
withEnv(['PATH+JAVA=/path/to/java/bin']) {
...
}
}
我可以使用以下方法让工作流等待现在和将来的168小时之间的任何小时标记的存在:
<datasets>
<dataset name="logs" frequency="${coord:hours(1)}" initial-instance="${startTime}" timezone="UTC">
<uri-template>/flags/logs/${YEAR}-${MONTH}-${DAY}/${HOUR}</uri-template>
<done-flag>OK</done-flag>
</dataset>
</datasets>
如何修改此设置,使其取决于将来下一个小时和168小时之间的任何小时标记?使用<input-events>
<data-in name="input-logs" dataset="logs">
<instance>${coord:future(0,168)}</instance>
</data-in>
</input-events>
不起作用-而是等待接下来的168小时内是否存在任何两个标志。