Q31 — AWS DVA-C02 第3章
第 31/100 問 | ← 第3章
ある企業がWebアプリケーションを運用しています。製品レビューの追跡のために、開発チームはAmazon DynamoDBテーブルを使用しています。各レコードには以下の項目が含まれます:Review ID(16桁のUUID)、Product IDおよびUser ID(他のテーブルを参照する16桁のUUID)、1〜5段階の製品評価、ユーザーによる任意のレビュー本文。パーティションキーはReview IDです。このテーブルで最も頻繁に実行されるクエリは、「特定の製品について評価値が最も高い上位10件のレビューを取得する」ことです。このクエリに対して最も高速な応答を提供するインデックスはどれですか?
- A. パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするグローバルセカンダリインデックス(GSI) ✓
- B. パーティションキーをProduct ID、並べ替えキーをReview IDとするグローバルセカンダリインデックス(GSI)
- C. パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするローカルセカンダリインデックス(LSI)
- D. パーティションキーをReview ID、並べ替えキーをProduct IDとするローカルセカンダリインデックス(LSI)
正解: A. パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするグローバルセカンダリインデックス(GSI)
解説
選択肢Aでは、パーティションキーをProduct ID、並べ替えキーをProduct Ratingとするグローバルセカンダリインデックス(GSI)が提案されています。この場合、該当GSIに対してクエリを実行することで、指定製品の評価値が最も高い上位10件のレビューを効率的に取得できます。なぜなら、GSIのパーティションキーがProduct IDであり、並べ替えキーがProduct Ratingであるため、評価順のソートと範囲クエリが最適化されるからです。他の選択肢の問題点:Bでは、Review IDを並べ替えキーとしているが、これは通常ユニーク識別子であり、評価順のソートには不適切です。Cでは、DynamoDBの制約により、LSIでProduct Ratingを並べ替えキーとして使用することはサポートされていません。Dでは、Review IDをパーティションキーとしており、製品単位のクエリには適していません。 【灯笼考证提供:swufelp1999】