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

あるデータパイプラインは複数のAWS Glueジョブを順番に実行している。特定のGlueジョブが一時的なスロットリングで断続的に失敗するため、失敗時に指数バックオフで自動リトライしつつ、すべてのリトライが失敗した場合のみ運用チームに通知したい。最小の運用負荷で実現する構成はどれか。

A
AWS Step Functions でワークフローを構成し、Glueジョブ実行タスクに指数バックオフ付きの Retry を設定し、すべてのリトライ失敗時に Catch で Amazon SNS 通知タスクへ遷移する
✓ 正解
Step Functions はタスクごとに IntervalSeconds/BackoffRate による指数バックオフ Retry を宣言的に設定でき、リトライ枯渇時に Catch で通知タスクへ分岐できる。サーバーレスで追加基盤が不要なため運用負荷が最小。
B
AWS Glue Workflow で順次実行を構成し、ジョブのプロパティで最大リトライ回数を設定し、CloudWatch アラームで失敗を検知して Amazon SNS で通知する
Glue Workflow のジョブリトライは固定回数で指数バックオフを細かく制御できず、最終失敗時のみ通知する分岐もCloudWatch側で別途構成が必要となり、要件を完全には満たさない。
C
Amazon EventBridge ルールで Glue ジョブの状態変化イベントを監視し、失敗イベントごとに Lambda で再実行し、回数超過時に Amazon SNS で通知する
EventBridge と Lambda はリトライ回数の管理や状態保持を自前のコードで実装する必要があり、指数バックオフや最終失敗判定のロジックを作り込むため運用負荷が高くなる。
D
Amazon MWAA(Airflow)で DAG を構成し、タスクの retries と retry_exponential_backoff を設定し、失敗時のコールバックで Amazon SNS 通知する
MWAA は retries と指数バックオフを設定できるが、常時稼働のAirflow環境を運用・管理する必要があり、この用途には基盤コストと運用負荷が過大で『最小』という要件に反する。

解説

AWS Step Functions はタスクごとに IntervalSeconds と BackoffRate による指数バックオフ Retry を宣言的に設定でき、リトライ枯渇時に Catch で Amazon SNS 通知タスクへ分岐できる。サーバーレスで追加の実行基盤が不要なため運用負荷が最小。 選択肢Bの Glue Workflow は固定回数リトライで指数バックオフを制御できない。 選択肢Cの EventBridge+Lambda はリトライ管理を自前実装する必要がある。 選択肢Dの MWAA は常時稼働のAirflow環境管理が必要で運用負荷が過大。

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

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

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