Q12 — AWS DEA-C01 第1章
第 12/100 問 | ← 第1章
ある会社は、毎日の取引データを各日の終了時にAmazon Redshiftテーブルにロードします。同社は、どのテーブルがロード済みか、どのテーブルがまだロードされていないかを追跡できるようにしたいと考えています。 データエンジニアは、RedshiftテーブルのロードステータスをAmazon DynamoDBテーブルに保存したいと考えています。データエンジニアは、ロードステータスの詳細をDynamoDBに公開するAWS Lambda関数を作成しました。 データエンジニアは、DynamoDBテーブルにロードステータスを書き込むためにLambda関数をどのように呼び出すべきですか?
- A. 2番目のLambda関数を使用して、Amazon CloudWatchイベントに基づいて最初のLambda関数を呼び出します。
- B. Amazon Redshift Data APIを使用してAmazon EventBridgeにイベントを公開します。EventBridgeルールを構成してLambda関数を呼び出します。 ✓
- C. Amazon Redshift Data APIを使用してAmazon Simple Queue Service(Amazon SQS)キューにメッセージを公開します。SQSキューを構成してLambda関数を呼び出します。
- D. 2番目のLambda関数を使用して、AWS CloudTrailイベントに基づいて最初のLambda関数を呼び出します。
正解: B. Amazon Redshift Data APIを使用してAmazon EventBridgeにイベントを公開します。EventBridgeルールを構成してLambda関数を呼び出します。
解説
会社は、Amazon Redshiftテーブルへのデータロード後に、どのテーブルがロード済みか、どのテーブルがまだロードされていないかを追跡したいと考えています。データエンジニアは、ロードステータスをAmazon DynamoDBテーブルに保存するためのAWS Lambda関数を作成しました。このLambda関数をトリガーするための有効な方法は、Amazon Redshift Data APIを使用してイベントをAmazon EventBridgeに公開し、EventBridgeルールを構成してLambda関数を呼び出すことです。この方法では、Redshiftへのデータロード後に直接イベントが発生し、DynamoDB内のステータスが更新されるため、追加のポーリングや遅延を必要としません。したがって、選択肢Bが正しい回答です。