2017-01-06 51 views
0

我有一個關於Apache Oozie的問題,更具體地說是關於CDH發行版。Oozie協調員如何對基礎工作流程變更作出反應?

協調員在使用的工作流程被修改時會發生什麼? 例如,工作流現在使用一個由變量自動填充的額外參數。這在理論上不需要協調員的任何改變。 運行協調員仍然使用初始工作流程的配置,還是動態適應新的工作流程?如果他們仍然使用舊的配置,那我是否需要定義一個新的協調器或者是否足夠重新提交同一個協調器?

+0

我相信workflow.xml已經改變了你。新配置參數是否已經存在於提交給座標的配置中? – YoungHobbit

+0

我不確定你在這裏問什麼。協調器不需要更改,但工作流的workflow.xml確實已更改。我在詢問協調員如何與工作流程相關聯。是一個運行的協調員鏈接到前一個文件,我會發現合乎邏輯?第二個問題是沒有鏈接到舊文件或新鏈接的協調員?含義:是否需要創建新協調員,更新協調員,還是可以重新提交? @YoungHobbit – spijs

+0

如果只是workflow.xml已經更改,那麼替換HDFS中的workflow.xml(您提供給協調器的應用程序路徑)。對於下一次執行,它將選擇新的工作流程。只要確保提交的協調器中已經存在新的/已更改的參數。謝謝。 – YoungHobbit

回答

1

這是如何工作的:每個提交的協調器都有一組固定的變量和參數(配置文件)。 -change選項允許您更改協調器的以下屬性:

  • endtime:協調器作業的結束時間。
  • 併發性:協調器作業的併發性。
  • 暫停時間:協調器作業的暫停時間。

可以使用-update選項更改協調員協調員名稱,頻率,開始時間,結束時間和時區除外的所有內容。詳細信息請參考官方文檔:

http://oozie.apache.org/docs/4.3.0/DG_CommandLineTool.html#Updating_coordinator_definition_and_properties

在你平時都指向協調文件的配置文件在HDFS中,然後指向HDFS工作流文件。如果您在hdfs中更改其中的任何一個,則下一次協調器觸發它時將使用新的/修改過的文件。工作流操作中正在使用的所有文件也是如此。 shell腳本,jar文件,...

+1

可以使用'-update'選項更新協調器的完整配置屬性。 – YoungHobbit

+1

你是對的,我編輯了我的答案來結合這個功能。非常感謝您指出這一點 – garkyn

+0

@garkyn我剛剛改變了Hue的工作流程,現在使用其他代碼所需的附加文件。儘管工作流程本身可行,但使用此工作流程的協調員並不是因爲它顯然仍使用舊的工作流程。如果我正確解釋您的答案,那麼工作流一旦觸發就會使用更新後的工作流xml。這是否意味着Hue在每次更改都創建了不同的工作流xml?或者另一種可能性:協調員在創建時從工作流文件複製副本? – spijs