5

複数のアプリケーションを持つ Hadoop サービスがあります。同じワークフローを再実行して、アプリケーションごとにデータを処理する必要があります。これらは、1 日の同じ時間に実行されるようにスケジュールされています。問題は、これらのジョブが実行されているときに、ジョブが実行中/失敗/成功したアプリケーションを知るのが難しいことです。もちろん、ジョブ構成を開いてそれを知ることはできますが、そのサービスの下で実行されている数十のアプリケーションがあるため、それには時間がかかります。

次のようなジョブを実行するときに、oozie にワークフロー (またはその一部) の名前を動的に渡すオプションはありますか?

oozie job -run -config <filename> -name "<NameIWishToGive>"
OR
oozie job -run -config <filename> -nameSuffix "<MyApplicationNameUnderTheService>"

また、複数のジョブ フォルダを作成して個別に実行するのは、コピペが多すぎるため、やりたくありません。

提案してください。

4

4 に答える 4

4

ジョブ構成で設定されたプロパティを使用できるように思えます。

以下を実行することで、動的な名前を取得できました。

これが私のworkflow.xmlの例です:

<workflow-app xmlns="uri:oozie:workflow:0.2" name="map-reduce-wf-${environment}">
...
</workflow-app>

そして、私のjob.propertiesには次のものがありました:

...
environment=test
...

名前は最終的に「map-reduce-wf-test」になりました

于 2013-10-10T21:05:15.330 に答える
1

ここのApacheドキュメントには、たくさんのoozieコマンドラインがあります。正確にどれを探しているのかわからないので、リンクを貼り付けただけだと思います。お役に立てれば!

于 2013-01-28T15:37:23.097 に答える