DynamoDBのお勉強
GSI(グローバルセカンダリインデックス)
すべてのパーティションキーにまたがり、表内のすべての項目を対象にするインデックス。 1テーブル当たり、最大で5つのグローバルセカンダリインデックスを作成できる。 現状のプライマリキーに加えて、別のプライマリキーを追加するイメージ
LSI(ローカルセカンダリインデックス)
同じパーティションキーを持つ項目を対象にするインデックス。 パーティションキーの値が同じで、ソートキーの値が異なる項目に対してクエリを実行すること 同じパーティションキーに対して別のソートキーを追加するようなイメージ 1テーブル当たり、最大で5つのグローバルセカンダリインデックスを作成できる。
DynamoDBの使用を見直す時
セカンダリインデックスに強く依存するようなテーブル設計になるようであれば、そもそもRDBで要件を満たしたほうがよいのではないかを検討してみる。
その他
ハッシュキー -> パーテーションキーへ改名 レンジキー => ソートキーへ改名