AWS re:Postを使用することにより、以下に同意したことになります AWS re:Post 利用規約

Amazon DynamoDB テーブルに適切なプライマリキーを選択する方法を教えてください。

所要時間1分
0

Amazon DynamoDB テーブルのプライマリキーをどのように選択すべきかを教えてください。

簡単な説明

DynamoDB テーブルの各項目には、一意のプライマリキーが必要です。パーティションキーまたは複合プライマリキーを指定できます。使用するのに適切なプライマリキーを決定するには、「DynamoDB でパーティションキーを効果的に設計して使用するためのベストプラクティス」を参照してください。

次のいずれかの方法で、プライマリキーを作成します。

  • カーディナリティの高い属性を使用する
  • 複合属性を使用する
  • パーティションキーに乱数を追加する

解決策

カーディナリティの高い属性を使用する

テーブルにおいて、各項目に一意の値を持つ属性 (ユーザー ID など) がある場合、その属性はプライマリキーとして適切です。この場合、プライマリキーはパーティションキーです。

複合属性を使用する

テーブルにおいて、各項目に一意の属性がない場合は、複数の属性を組み合わせることで一意のプライマリキーを作成できます。例として、顧客 ID と注文 ID の属性を含む注文テーブルを挙げます。2 つの ID 値を組み合わせ、多数のユニークな値を持つ可能性が高いパーティションキーを取得します。次に、別の列 (注文日など) をソートキーとして使用します。この場合、複合プライマリキーを使用することになります。

パーティションキーに乱数を追加する

書き込みの多いユースケースでは、あらかじめ決められた範囲内の乱数をパーティションキーに追加することで、キーのランダム性を高めます。詳細については、「DynamoDB テーブルで、書き込みシャーディングを使用してワークロードを均等に分散する」を参照してください。

関連情報

適切な DynamoDB パーティションキーを選択する

Amazon DynamoDB のプロビジョニング済みテーブルでスロットリングが発生する理由を知りたいです

Amazon DynamoDB でデータを効率的にソートする

AWS公式
AWS公式更新しました 2ヶ月前
コメントはありません