Q24 — AWS DVA-C02 第1章
第 24/100 問 | ← 第1章
開発者は、顧客注文をAmazon DynamoDBテーブルに挿入するアプリケーションを管理しています。注文はcustomer_idをパーティションキー、order_idをソートキー、order_dateを属性として使用します。新しいアクセスパターンでは、order_dateとorder_idを用いたデータアクセスが必要です。開発者は、この新しいアクセスパターンをサポートする新しいAWS Lambda関数を実装する必要があります。開発者は、運用効率を最大にする方法で新しいアクセスパターンをサポートするにはどうすればよいですか?
- A. DynamoDBテーブルに新しいローカルセカンダリインデックス(LSI)を追加し、order_dateをパーティションキー、order_idをソートキーとして指定します。新しいLSIをクエリする新しいLambda関数を作成します。
- B. 新しいLambda関数を作成し、DynamoDBテーブルをスキャンします。Lambda関数内で、order_dateとorder_idに基づいて結果を取得・集約するメソッドを記述します。
- C. DynamoDBテーブルに新しいグローバルセカンダリインデックス(GSI)を追加し、order_dateをパーティションキー、order_idをソートキーとして指定します。新しいGSIをクエリする新しいLambda関数を作成します。 ✓
- D. テーブルでDynamoDB Streamsを有効にします。新旧のイメージ情報をDynamoDBストリームに書き込むように選択します。新しいLambda関数を作成し、DynamoDBストリームをクエリします。
正解: C. DynamoDBテーブルに新しいグローバルセカンダリインデックス(GSI)を追加し、order_dateをパーティションキー、order_idをソートキーとして指定します。新しいGSIをクエリする新しいLambda関数を作成します。
解説
選択肢Cが正解です。グローバルセカンダリインデックス(GSI)は、DynamoDBテーブル内で異なるキー構造でクエリを実行することを可能にします。この例では、order_dateをパーティションキー、order_idをソートキーとして新しいGSIを追加することで、order_dateとorder_idによる新しいアクセスパターンを効率的にサポートできます。GSIはメインテーブルとは異なるキー構造をサポートし、効率的なクエリパフォーマンスを提供します。 【灯笼考证提供:swufelp1999】