無限ノック › DEA 練習問題一覧 › 問題
DEAデータオペレーションとサポート

あるデータエンジニアリングチームは、AWS Glueを使用したデイリーETLパイプラインを構築しています。このパイプラインは以下の依存関係を持っています: ・Step1:S3のRawゾーンをGlue Crawlerでクロールしてデータカタログを更新する ・Step2:Crawlerの完了後、データクレンジングジョブとエンリッチメントジョブを並列実行する ・Step3:両Glueジョブの完了後、最終集計ジョブを実行する チームの要件として、Glueコンソール上でパイプライン全体の実行状況を可視化し、Step2で失敗したジョブのみをStep1からやり直さずに個別再実行したいと考えています。Glueコンソール上での管理を完結させることを優先し、追加インフラを最小化したい。最も適切なアーキテクチャはどれですか?

A
Amazon EventBridgeのスケジュールルールでGlue Crawlerをトリガーし、Crawlerの完了イベントを検知するEventBridgeルールでAWS Lambdaを呼び出し、LambdaからGlueジョブを並列・順次起動する
EventBridge + Lambdaでトリガーや並列起動は実現できますが、ジョブ状態管理のロジックをLambdaコードで実装する必要があり、Glueコンソール上でのパイプライン全体の統合的な可視化もできません。
B
AWS Step FunctionsでCrawler起動・並列ジョブ実行・集計ジョブを含むステートマシンを定義し、AWS SDK統合でGlueリソースを呼び出す
Step FunctionsはGlueとは独立したサービスで管理コンソールも別です。「Glueコンソール上での管理を完結させる」という要件を満たせず、追加インフラになります。
C
Amazon Managed Workflows for Apache Airflow(MWAA)でDAGを定義し、GlueJobOperatorとGlueCrawlerOperatorで各ステップを制御する
MWAAはApache Airflowをフルマネージドで提供しますが、クラスターの維持コストや学習コストが発生し、Glueコンソール外での管理になるため追加インフラ最小化の要件を満たしません。
D
AWS Glue Workflowsを使用して、Crawler・Glueジョブ・条件トリガーをグラフとして定義し、スケジュールトリガーでワークフロー全体を管理する
✓ 正解
Glue WorkflowsはCrawler・ジョブ・条件トリガーをGlueネイティブに管理できる専用機能です。Glueコンソールでグラフ表示・実行状態確認ができ、失敗ジョブの個別再実行も可能で追加インフラ不要です。

解説

AWS Glue WorkflowsはGlue Crawler・ジョブ・トリガーをネイティブにサポートするETLオーケストレーション機能です。Glueコンソール上でパイプラインのグラフを視覚的に確認でき、各ノードの実行状態をリアルタイムに把握できます。条件トリガーを使用することで「Crawlerが成功した場合にStep2の両ジョブを並列起動」「両ジョブが完了した場合にStep3を起動」という依存関係を宣言的に定義できます。失敗したジョブは個別に再実行でき、成功済みのCrawlerを再実行する必要がありません。GlueリソースのみをGlueコンソール内で管理できるため、追加インフラが不要です。 選択肢AのEventBridge + Lambdaは実現可能ですが、ジョブ状態管理・並列起動ロジック・失敗時の個別再実行をLambdaコードで実装する必要があり、Glueコンソールでの統合可視化もできません。 選択肢BのAWS Step Functionsは高機能なオーケストレーションサービスですが、Glueとは別サービスであり、Glueコンソール内での可視化は提供されません。 選択肢CのAmazon MWAAはApache Airflowを提供する強力なサービスですが、クラスターの管理コスト・学習コストが発生し、Glueコンソールでの管理完結という要件を満たしません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DEA の問題一覧に戻る