DVA-C02開発EASY単一選択

あるEコマース企業が、商品カタログをDynamoDBに保存している。商品IDはランダムなUUID形式で、1日に数百万件の読み取りが均等に分散して発生する。テーブル設計においてパーティションキーとして最も適切な属性はどれか。

  1. A. カテゴリID(商品カテゴリごとに100〜1000件の商品が存在する)
  2. B. 商品ID(ランダムなUUID形式)
  3. C. 登録日(1日に数万件の商品が登録される)
  4. D. ブランドID(ブランドごとに10〜5000件の商品が存在する)
解答と解説を見る

正解: B

DynamoDBのパーティションキーは、データが各パーティションに均等に分散されるよう高カーディナリティの値を選ぶ必要がある。ランダムなUUIDは事実上すべて異なる値であるため、ホットパーティション(特定パーティションへのアクセス集中)が生じず、スロットリングのリスクが最小になる。Aのカテゴリ IDは低カーディナリティで、人気カテゴリへのアクセスが集中するホットパーティション問題が発生する。Cの登録日では同日登録の全商品が同一パーティションに集中し、書き込みスロットリングが起きやすい。DのブランドIDもカテゴリ同様に人気ブランドへのアクセスが偏り、スループットが不均等になる。

▸ この試験を本気で演習する(全150問・無料)