2017-01-12 19 views
1

私は開始時に開始時刻を365日に設定してから、毎日の頻度で入力データを持つ最新の日付に達するまでワークフローを実行するOozieコーディネーターを持っています。したがって、coordinator.xmlは次のようになります。毎日ワークフローを再実行

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<coordinator-app name="${jobName}" frequency="${coord:days(1)}" start="${startTime}" end="${endTime}" timezone="${timezone}" xmlns="uri:oozie:coordinator:0.2"> 
    <controls> 
     <timeout>-1</timeout> 
     <concurrency>30</concurrency> 
     <execution>FIFO</execution> 
    </controls> 

    <datasets> 
     <dataset name="myData" frequency="${coord:days(1)}" initial-instance="${initialTime}" timezone="${timezone}"> 
      <uri-template>${outputPath}/${YEAR}${MONTH}${DAY}</uri-template> 
     </dataset> 
    </datasets> 

    <input-events> 
     <data-in name="myInput" dataset="myData"> 
      <instance>${coord:current(-1)}</instance> 
     </data-in> 
    </input-events> 

    <action> 
     <workflow> 
      <app-path>${appPath}</app-path> 
      <configuration> 
       <property> 
        <name>myInput</name> 
        <value>${coord:dataIn('myInput')}</value> 
       </property> 
       <property> 
        <name>date</name> 
        <value>${coord:formatTime(coord:dateOffset(coord:nominalTime(), -1, 'DAY'), 'yyyyMMdd')}</value> 
       </property> 
      </configuration> 
     </workflow> 
    </action>  
</coordinator-app> 

このコーディネーターは起動時に365のワークフローをトリガーします。その後、翌日には、その日の入力データに対して1つのワークフローが実行されます。翌日もそうです。

要件が変更されており、初めてという365のワークフローを毎日実行する必要があります。それで、スタートアップ時には今のように走りたい。しかし、翌日、入力データが利用できるようになったら、私は最後の365日間、再び毎日のワークフローを実行する必要があります。また、新しい入力データが検出されると、翌日以降も同様に処理されます。

どうすればこの問題を解決できますか?入力として考慮するインスタンスの範囲を指定するコーディネータ使用start-instanceend-instancedata-inタグで おかげで、

アルバロ

答えて

0

start-instance:は、インスタンス範囲の開始点(同期データセットの時刻)を参照します。 end-instance:は、インスタンス範囲の終わり(同期データセットの時刻)を参照します。詳細については

<input-events> 
    <data-in name="myInput" dataset="myData"> 
     <start-instance>${coord:current(-365)}</start-instance> 
     <end-instance>${coord:current(-1)}</end-instance> 
    </data-in> 
</input-events> 

参照してください。Synchronous Coordinator Application Definition

関連する問題