DVAAWSのサービスを使用した開発

開発者は、DynamoDBテーブルへのアイテム書き込みをトリガーとして、Lambda関数でリアルタイムな在庫更新処理を行いたいと考えています。このアーキテクチャを実現するために必要な設定として最も適切なものはどれですか?

A
DynamoDBテーブルにアイテムが書き込まれるたびにS3バケットにイベントを転送し、S3イベント通知でLambdaを起動する
DynamoDBからS3バケットへ直接イベントを転送する標準機能は存在せず、このアーキテクチャは実現できません。
B
DynamoDBテーブルでDynamoDB Streamsを有効にし、そのストリームをLambdaのイベントソースマッピングとして設定する
✓ 正解
DynamoDB Streamsはテーブルのアイテム変更(作成・更新・削除)をシーケンシャルに記録するストリームです。LambdaのESM(Event Source Mapping:イベントソースマッピング)でDynamoDB Streamsを設定すると、変更レコードをLambdaが自動ポーリングして処理できます。
C
Amazon EventBridgeルールでDynamoDBへの書き込みAPIコールを検知し、Lambdaを起動する
EventBridgeはCloudTrailと組み合わせてAPIコール検知は可能ですが変更内容の取得には不向きです。
D
DynamoDBのテーブル設定でLambda関数のARNを直接指定してトリガーを設定する
DynamoDBのテーブル設定でLambda関数のARNを直接指定する設定機能は存在しません。

解説

正解: DynamoDBテーブルでDynamoDB Streamsを有効にし、そのストリームをLambda関数のイベントソースマッピング(ESM)として設定する。 DynamoDB Streamsはテーブルのアイテム変更(作成・更新・削除)をシーケンシャルに記録するストリームです。LambdaのESM(Event Source Mapping:イベントソースマッピング)でDynamoDB Streamsを設定すると、変更レコードをLambdaが自動ポーリングして処理できます。 選択肢Aは、DynamoDBからS3バケットへ直接イベントを転送する標準機能は存在せず、このアーキテクチャは実現できません。 選択肢Cは、EventBridgeはCloudTrailと組み合わせてAPIコール検知は可能ですが変更内容の取得には不向きです。 選択肢Dは、DynamoDBのテーブル設定でLambda関数のARNを直接指定する設定機能は存在しません。

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

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

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