web-dev-qa-db-ja.com

Oozieワークフロー、コーディネーター、バンドルの違いは何ですか

Oozieワークフロー、コーディネーター、バンドルの違いは何ですか?

Oozieワークフローは、一連のアクションを定義します。また、実行するたびに手動で呼び出す必要があります。コーディネーターを通じて同じワークフローをスケジュールすることができます。この理解は正しいですか?

それでは、バンドルには何が追加されますか?

コーディネーターのセットをスケジュールするために再び使用されると思います。それでは、あるワークフローが別のサブワークフローを持つことができるように、あるコーディネーターを使用して他のコーディネーターをスケジュールできないのはなぜですか。

14
Kaushik Lele

ワークフロー:

これは一連のアクションです。これはxmlで記述されており、アクションはmap reduce、Hive、pigなどです。

コーディネーター:

これは、一連の条件が満たされたときにアクション(通常はワークフロージョブ)をトリガーするプログラムです。条件は、時間周波数、その他の外部イベントなどです。

バンドル:

これは、一連のコーディネータージョブをバッチ処理する高レベルのoozie抽象化として定義されています。バンドルジョブを開始する時間を指定することもできます。

9
madhu

ワークフローには、Hadoopジョブを実行するための時間仕様がありません。コーディネータージョブには、頻度タグを使用したcoordinator.xmlのジョブに関する時間仕様があります。集合コーディネータージョブは、バンドルジョブと見なされます。バンドルジョブでは、個々のユーザーは、job.propertiesを使用して、それぞれのジョブに独自のジョブを割り当てることができます。

2

私の理解では、バンドルを使用すると2人のコーディネーターをグループ化できるため、マネージャー、表示、開始/停止を行う方がよいでしょう...

2つのデータパイプラインがある可能性があります。1つはログ処理(収集/解析/ ETL)用で、もう1つはビジネスロジック用です。

次に、2つのバンドルを作成して、さまざまな種類のコーディネーターをグループ化します。

0
Robin Wang