E-MapReduce (EMR) コンピュートエンジンで実行される各 DataWorks タスクインスタンスには、順次実行される複数の EMR ジョブが含まれています。いずれかのジョブが失敗したり、予想よりも長く RUNNING 状態のままになったりすると、タスクインスタンス全体とそのダウンストリームインスタンスがブロックされます。エンジン O&M ページでは、個々の EMR ジョブを可視化できるため、問題のあるジョブがカスケードする前に特定、停止、および削除できます。
制限事項
-
エンジン O&M は EMR ジョブのみをサポートしています。O&M データを取得するには、して、ご利用の EMR 実行パッケージをスペックアップしてください。チケットを送信して、ご利用の EMR 実行パッケージをスペックアップしてください。して、ご利用の EMR 実行パッケージをスペックアップしてください。チケットを送信して、ご利用の EMR 実行パッケージをスペックアップしてください。
-
[Engine Maintenance] は、EMR クラスターを DataWorks ワークスペースに登録した後にのみ、オペレーションセンターの左側のナビゲーションウィンドウに表示されます。
-
専用スケジューリングリソースグループを使用している場合は、チケットを送信チケットを送信して、その構成をスペックアップしてください。スペックアップしない場合、エンジン O&M ページでは特定のフィールドがハイフン (-) として表示されます。
注意事項
YARN アプリケーションは、EMR サービス間で再利用できます。アプリケーションが再利用されると、DataWorks サービスのいずれがトリガーしたかに関係なく、同じジョブ ID (アプリケーション ID) がそのジョブに表示されます。
-
エンジン O&M ページには、EMR ジョブが DataWorks で実行されたときに生成された最初のアプリケーション ID のみが表示されます。
-
DataWorks タスクインスタンスが成功または失敗にかかわらず完了した後も、対応する YARN アプリケーションが RUNNING 状態のままになることがあります。
例:kyuubi.engine.share.level パラメーターは、EMR Kyuubi の場合、デフォルトで USER に設定されており、各ユーザーが 1 つのエンジンを共有することを意味します。ユーザーがそのエンジンでトリガーするすべてのジョブは、同じアプリケーション ID を共有します。DataStudio で EMR Kyuubi タスクを実行し、後で DataAnalysis で同じタスクを分析しても、新しいアプリケーション ID は生成されず、DataStudio の ID が再利用されます。
さらに、kyuubi.session.engine.idle.timeout は、アイドルセッションがアクティブな状態を維持する期間を制御します。kyuubi.session.engine.idle.timeout=PT30M の場合、ジョブが完了した後も YARN アプリケーションは 30 分間 RUNNING 状態のままになります。Kyuubi パラメーター設定は、EMR on ECS ページで表示できます。
前提条件
開始する前に、以下を確認してください。
-
EMR クラスターが DataWorks ワークスペースに登録されていること。「DataWorks への EMR クラスターの登録」をご参照ください。
-
関連する EMR タスクが DataWorks で実行されていること。「DataWorks での EMR ノード開発に関する注意事項」をご参照ください。
エンジン O&M ページへの移動
-
DataWorks コンソールにログインします。 上部のナビゲーションバーで、対象のリージョンを選択します。 左側のナビゲーションウィンドウで、[データ開発と O&M] > [オペレーションセンター] を選択します。
-
ドロップダウンリストから対象のワークスペースを選択し、[オペレーションセンターへ移動] をクリックします。
-
オペレーションセンター ページの左側のナビゲーションウィンドウで、[その他] > [エンジンメンテナンス] > [E-MapReduce] を選択します。
EMR ジョブの表示と検索
エンジン O&M ページには、現在のリージョンの DataWorks ワークスペース全体で作成されたすべての EMR ジョブが一覧表示されます。
デフォルトでは、このページには過去 3 日間のデータが表示されます。ページ上部 (エリア 1) のフィルターを使用して、ジョブ ID、ジョブタイプ、DataWorks インスタンス ID、およびその他の条件で結果を絞り込みます。
[ジョブ ID] または [DataWorks インスタンス ID] で検索すると、過去 7 日間のインスタンスのみが検索されます。[DataWorks インスタンス ID] フィールドには、オペレーションセンターで実行されたインスタンスの ID のみを受け付けます。
各ジョブ行 (エリア 2) には、次の詳細が表示されます。
| フィールド | 説明 |
|---|---|
| ジョブ ID | EMR ジョブの一意の識別子です。クリックするとジョブ詳細ページに移動します。 |
| ジョブステータス | ジョブの現在の状態です。「ジョブステータス」をご参照ください。 |
| 実行期間 | ジョブが実行されている期間、または完了にかかった時間です。 |
| ジョブソース | ジョブをトリガーした DataWorks サービス (例:DataStudio または DataAnalysis) です。 |
| ノードインスタンス ID | ジョブが属する DataWorks タスクインスタンスです。異なる時間に開始されたジョブは、同じノードを共有していても、異なるタスクインスタンスに属するものとして扱われます。Data Quality、DataStudio、または DataAnalysis によってトリガーされたタスクは、この列にハイフン (-) が表示されます。 |
| キュー使用率 (%) | このジョブに割り当てられた YARN キューリソースの割合です。 |
| 開始時刻 / 終了時刻 | ジョブの実行シーケンスと期間を表示するためのソート可能な列です。 |
ジョブステータス
ジョブの最終ステータスは、ジョブ自体が正常に完了したかどうかを反映します。ライフサイクル順のステータスは次のとおりです。
| ステータス | 意味 |
|---|---|
| 新規 | ジョブが作成されたばかりです。 |
| NEW_SAVING | ジョブが保存中です。 |
| [提出済み] | ジョブが実行のために送信されました。 |
| [承認済み] | スケジューリングシステムが実行リクエストを承認しました。 |
| 実行中 | ジョブがアクティブに実行中です。 |
| 完了 | ジョブの実行が完了しました。 |
| [SUCCESSED] | ジョブが正常に完了しました。 |
| [失敗] | ジョブが失敗しました。失敗がタスクインスタンスとそのダウンストリームインスタンスをブロックするのを防ぐため、直ちに調査してください。 |
| KILLED | ジョブがユーザーまたは管理者によって停止されました。 |
このページでは、[MapReduce] と [Spark] タイプの EMR ジョブのみが表示されます。
ジョブの問題への対応
スタックしたジョブまたは長時間実行されているジョブの停止
ジョブが予想よりも長く RUNNING 状態のままになる場合 (例えば、自動終了を妨げる内部エラーのため)、リソースを解放し、他のジョブのブロックを解除するために停止してください。
[ワークスペース管理者]、[O&M] ロールを持つユーザー、および タスクのオーナー のみがタスクインスタンスを停止できます。 実行中のジョブを停止すると、DataWorks タスクインスタンス全体が FAILED 状態になり、そのダウンストリームインスタンスがブロックされます。 複数の EMR ジョブが同じ DataWorks タスクインスタンスに属している場合に、そのうちの 1 つを終了すると、DataWorks タスクインスタンス全体が FAILED 状態になります。 ご注意ください。
-
単一のジョブを停止するには、リストで該当ジョブを見つけ、 [アクション] 列の[実行中のジョブを終了]をクリックします。
-
複数のジョブを一度に停止するには、ジョブを選択して、ページの左下隅にある[DataWorksノードインスタンスの停止]をクリックします。
実行中の状態のインスタンスのみが停止できます。
失敗したジョブの調査と回復
ジョブが FAILED 状態の場合、原因を特定し、実行を再開するために次の手順を実行します。
-
[ジョブ ID] または [ノードインスタンス ID] をクリックして詳細ページを開き、トラブルシューティングを開始します。
-
または、[アクション] 列のサービスボタン (例:[DataStudio]) をクリックして、ジョブがトリガーされたサービスページに直接移動します。
サービスページへのアクセス権限:
-
[データ分析]:ファイル所有者のみが SQL クエリファイルを表示できます。
-
[DataStudio]:すべてのワークスペース開発者がインスタンスを表示できます。トリガーしたユーザーのみが実行履歴を表示できます。