昨日のデータセット入力が利用可能になった後にのみ、今日のインスタンスを実行するように Oozie コーディネーターをスケジュールする方法を教えてください。1 日前または 2 日前のデータセットなど、古いデータセットである必要がある 1 つの入力データセットのみをチェックする必要があります。今日のデータセットの入力を待つ必要はありません。
以下のようなものを使用してみました。ここでは、昨日のデータを確認できるようにインスタンスタグ内で ${coord:current(-1)} を使用しましたが、これは機能していないようです。昨日の日付でシグナルが利用できない場合でも、ジョブは通常の時間に起動されます。
<coordinator-app name="hello-coord" frequency="${coord:days(1)}"
start="2009-01-02T08:00Z" end="2009-01-04T08:00Z" timezone="America/Los_Angeles"
xmlns="uri:oozie:coordinator:0.1">
<datasets>
<dataset name="din" frequency="${coord:days(1)}"
initial-instance="2009-01-02T08:00Z" timezone="America/Los_Angeles">
<uri-template>${baseFsURI}/${YEAR}/${MONTH}/${DAY}</uri-template>
<done-flag>_SUCCESS</done-flag>
</dataset>
</datasets>
<input-events>
<data-in name="input" dataset="din">
<instance>${coord:current(-1)}</instance>
</data-in>
</input-events>
<action>
<workflow>
<app-path>${wf_app_path}</app-path>
</workflow>
</action>