AWS認定資格 WEB問題集&徹底解説
デベロッパー–アソシエイト
問題文と選択肢
この要件を満たすために取るべき方法として、最も適切なものはどれですか。
- AWS Backup のジョブ状態を数分おきにポーリングする Lambda 関数を、EventBridge のスケジュールルールで定期実行する
- AWS Backup 用のイベントソースマッピングを Lambda 関数に作成し、ジョブ状態の変化をポーリングさせる
- Amazon EventBridge にルールを作成し、AWS Backup のジョブ状態変化イベントをパターンマッチさせて Lambda 関数をターゲットに指定する
- AWS Backup が出力するジョブログを Amazon CloudWatch Logs のロググループで受け取り、サブスクリプションフィルターで Lambda 関数へ配信する
A. AWS Backup のジョブ状態を数分おきにポーリングする Lambda 関数を、EventBridge のスケジュールルールで定期実行する
Lambda 関数から ListBackupJobs API などを定期的に呼べば状態変化は検知できるものの、「変化していない時間帯」も含めて数分おきに Lambda が動き続けるため無駄な実行課金が発生し、通知も最大でポーリング間隔ぶん遅れます。
さらに「どのジョブを通知済みか」の重複排除を自前で持つ必要があり、コードと状態管理が増えます。
要件を満たせなくはありませんが、イベント駆動の仕組みが標準で用意されている以上、最も適切な方法ではありません。
B. AWS Backup 用のイベントソースマッピングを Lambda 関数に作成し、ジョブ状態の変化をポーリングさせる
Lambda のイベントソースマッピングは、Lambda 側がポーリングして読み取るストリーム/キュー型のサービス専用の仕組みです(Kinesis Data Streams、DynamoDB Streams、Amazon SQS、Amazon MQ、Amazon MSK / 自己管理型 Kafka、Amazon DocumentDB など)。
AWS Backup はイベントソースマッピングの対象に含まれておらず、そもそも作成できません。
「ポーリングさせる」という語感からもっともらしく見えますが、実在しない構成です。
C. Amazon EventBridge にルールを作成し、AWS Backup のジョブ状態変化イベントをパターンマッチさせて Lambda 関数をターゲットに指定する
AWS Backup は、バックアップジョブやコピージョブの状態が変わるたびに、source が aws.backup、detail-type が「Backup Job State Change」のイベントを Amazon EventBridge へ自動的に送信します。
EventBridge のルールでイベントパターンを書けば、COMPLETED / FAILED といった状態だけを絞り込んでターゲットの Lambda 関数を起動できます。
AWS Backup 側に「Lambda を呼ぶ設定」が無くても、イベントの受け側である EventBridge が仲介するため両者を直接つなぐ必要がなく、通知先を SNS や Step Functions へ増やすのもターゲット追加だけで済みます。ポーリング不要・追加コードほぼゼロで要件を満たす唯一の選択肢です。
D. AWS Backup が出力するジョブログを Amazon CloudWatch Logs のロググループで受け取り、サブスクリプションフィルターで Lambda 関数へ配信する
CloudWatch Logs のサブスクリプションフィルターで Lambda へ配信する構成自体は実在しますが、それはロググループにログが流れてくることが前提です。
AWS Backup はジョブの実行ログを CloudWatch Logs のロググループへ出力しません。ジョブの状態は EventBridge へのイベント送信、またはバックアップボールトの通知 API(Amazon SNS)で公開されます。
起点となるログソースが存在しないため、この構成は組み立てられません。
構成図
AWS Backup(バックアップジョブ) │ Backup Job State Change(COMPLETED / FAILED) ▼ Amazon EventBridge(イベントパターンでルールにマッチ) │ ターゲットとして起動 ▼ AWS Lambda(担当者へ通知)
AWS サービスの「状態が変わった」は EventBridge で拾う。ポーリングを書き始めた時点で設計を疑う。
正解への思考ルート
問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。| 要件 | 判断ポイント |
|---|---|
| AWS Backup 側に Lambda を呼び出す設定項目が無い | 呼び出し元に機能が無いなら、イベントの受け側(EventBridge)で仲介する。AWS サービス間の疎結合連携の基本形 →選択肢(C)が正解 |
| ジョブが「完了または失敗した際に」起動したい(状態変化がトリガー) | AWS Backup は Backup Job State Change イベントを EventBridge へ送信済み。ルールのイベントパターンで state を絞り込むだけでよい →選択肢(C)が正解/選択肢(A)を消す |
| 自動的に起動したい(運用の手間を増やしたくない) | 数分おきのポーリングは通知遅延・無駄な実行課金・重複排除の自作を招く。イベント駆動が用意されている場面では選ばない →選択肢(A)を消す |
| Lambda をどうつなぐか(連携方式の知識) | イベントソースマッピングはストリーム/キュー型のサービス専用で、AWS Backup は対象外。EventBridge ルールのターゲットとして指定するのが正しい →選択肢(B)を消す |
| 実在する連携経路かどうか | AWS Backup はジョブログを CloudWatch Logs へ出力しないため、サブスクリプションフィルターの起点がない →選択肢(D)を消す |
ひっかけポイント
- 選択肢 B の「イベントソースマッピング」は Lambda の実在機能だが、使えるのは Lambda 側がポーリングするストリーム/キュー型サービスだけ(Kinesis・DynamoDB Streams・SQS・MQ・MSK/Kafka・DocumentDB)。AWS Backup のような「イベントを push してくるサービス」には作成できない
- 選択肢 D は「CloudWatch Logs サブスクリプションフィルター → Lambda」という実在するパターンを、ログを出さないサービスに当てはめたひっかけ。連携方式だけでなくそのサービスがログを出すのか、イベントを出すのかを区別する
- 選択肢 A は「動くには動く」タイプの誤答。設問が「最も適切」を問うている以上、要件を満たすかどうかではなく遅延・コスト・自作コード量で比較して落とす
- 「AWS Backup に Lambda を呼ぶ設定が無い」という与件を、連携そのものが不可能と読み違えないこと。呼び出し元に機能が無くても EventBridge が受け側として成立させる
出題バリエーション
同じ知識が本番では条件を変えて出題されます。| 問題文がこう変わったら | 正解はこう変わる |
|---|---|
| 「バックアップ失敗時にメールで担当者へ通知したいだけ(コードは書きたくない)」 | EventBridge ルールのターゲットを Amazon SNS トピックにする(Lambda は不要)。バックアップボールトの通知 API(SNS)も選択肢になる。 |
| 「複数ステップの復旧処理を、失敗時のリトライ付きで実行したい」 | EventBridge のターゲットを AWS Step Functions ステートマシンにする。 |
| 「毎晩 1 時にレポート集計の Lambda を動かしたい」 | 状態変化ではなく時刻がトリガーなので、EventBridge Scheduler(スケジュールルール)が正解に。選択肢 A の構成が正しくなる場面。 |
| 「Amazon S3 にオブジェクトが置かれたら Lambda を起動したい」 | S3 イベント通知で直接 Lambda を呼べる(EventBridge 経由も可)。呼び出し元に機能があるなら仲介は不要。 |
| 「Amazon SQS のキューに入ったメッセージを Lambda で処理したい」 | ここでこそイベントソースマッピングが正解。選択肢 B の用語が正しく使われる場面。 |
リファレンス
この問題を解くために必要な知識を扱う公式ドキュメントです。| 知識項目 | 公式ドキュメント |
|---|---|
| AWS Backup のジョブ状態変化イベントと EventBridge 連携 | EventBridge を使用した AWS Backup イベントのモニタリング |
この要件を満たすために取るべき方法として、最も適切なものはどれですか。
- AWS Backup のジョブ状態を数分おきにポーリングする Lambda 関数を、EventBridge のスケジュールルールで定期実行する
- AWS Backup 用のイベントソースマッピングを Lambda 関数に作成し、ジョブ状態の変化をポーリングさせる
- Amazon EventBridge にルールを作成し、AWS Backup のジョブ状態変化イベントをパターンマッチさせて Lambda 関数をターゲットに指定する
- AWS Backup が出力するジョブログを Amazon CloudWatch Logs のロググループで受け取り、サブスクリプションフィルターで Lambda 関数へ配信する
会員機能
お役立ち情報
- プレミアム会員のご紹介
- 「徹底解説」のご紹介
- 「模擬試験」のご紹介
- 収録問題と試験ガイドの対応
- 会員機能のご紹介
- おすすめの勉強方法
- 試験概要
- AWSサービスの解説
- AWS認定資格の種類・対象者・受験料・合格ライン
- スマホのホーム画面に登録する方法
姉妹サイト
- CLF:AWS 認定クラウドプラクティショナー
- SAA:AWS 認定ソリューションアーキテクト-アソシエイト
- AIF:AWS 認定AIプラクティショナー
- SOA:AWS 認定CloudOpsエンジニア-アソシエイト
- DVA:AWS 認定デベロッパー-アソシエイト
- DEA:AWS 認定データエンジニア-アソシエイト
- MLA:AWS 認定機械学習エンジニア-アソシエイト
- SAP:AWS 認定ソリューションアーキテクト-プロフェッショナル
- DOP:AWS 認定DevOpsエンジニア-プロフェッショナル
- AIP:AWS 認定生成AIデベロッパー-プロフェッショナル
- SCS:AWS 認定セキュリティ-専門知識
- AZ-900:Microsoft Azure Fundamentals
- AI-900:Microsoft Azure AI Fundamentals