DEA-C01:AWS Certified Data Engineer - Associate データの取り込みと変換 問5
データの取り込みと変換/データパイプラインのオーケストレーション「Glue ジョブ → Lambda → Amazon Redshift へのロード」という依存関係のある複数ステップのワークフローを、各ステップの成否で分岐・リトライしながら状態管理して実行したいと考えています。最も適切なのはどれですか。
当サイトのオリジナル問題(DEA-C01:AWS Certified Data Engineer - Associateの出題範囲「データの取り込みと変換」に対応。実際の試験問題ではありません)
- AAWS Step Functions でステートマシンを定義し、各ステップの状態遷移・分岐・リトライを管理する
- B1 つの大きな Lambda 関数にすべての処理を詰め込む
- CEC2 上の cron で各処理を時刻決め打ちで順番に起動する
- DAmazon SNS の通知だけでワークフローを制御する
正解:A
解説
AWS Step Functions は、ステートマシンとして複数ステップのワークフローを定義し、各ステップの状態遷移・条件分岐・リトライ・エラーハンドリングを管理できます。依存関係のある ETL パイプラインのオーケストレーションに適します。単一の巨大 Lambda や cron の決め打ち、SNS 通知だけでは、状態管理や分岐・リトライを体系的に扱えません。
下線の用語は 用語集 で意味を確認できます。
選択肢ごとの解説
- A正しい。Step Functions でステップの状態遷移・分岐・リトライを管理できます。
- B誤り。1 つの巨大な Lambda は保守性・再試行制御・タイムアウトの面で不適切です。
- C誤り。cron の時刻決め打ちは依存関係や失敗時の分岐を扱えません。
- D誤り。SNS 通知だけではワークフローの状態管理はできません。