ベストプラクティス - AWS 規範ガイダンス

ベストプラクティス

DynamoDB の設計では以下のベストプラクティスを考慮してください。

  • パーティションキーの設計 — カーディナリティの高いパーティションキーを使用して負荷を均等に分散します。

  • 隣接関係リストの設計パターン — この設計パターンは、一対多および多対多リレーションシップを管理する場合に使用します。

  • スパースインデックス – グローバルセカンダリインデックス (GSI) にはスパースインデックスを使用します。GSI を作成する際、パーティションキーおよびソートキー (オプション) を指定します。対応する GSI パーティションキーを含むベーステーブルの項目だけが、スパースインデックスに表示されます。これにより GSI を小さく抑えることができます。

  • インデックスの多重定義 — さまざまなタイプの項目のインデックス作成に、同じ GSI を使用します。

  • GSI 書き込みシャーディング — うまくシャーディングしてパーティション全体にデータを分散することで、クエリを効率的かつ高速に行うことができます。

  • 大きなアイテム — テーブル内にメタデータのみを保存し、blob を Amazon S3 に保存し、リファレンスを DynamoDB に保持します。大きな項目を複数の項目に分割し、ソートキーを使用して効率的にインデックスを作成します。

設計のベストプラクティスの詳細については、Amazon DynamoDB のドキュメントを参照してください。