2016-04-30 9 views
0

すでにテーブルにパーティションキーがあり、グローバルセカンダリインデックスを追加しようとしています。ソートキーを使わないでこのGSIを作成するとどうなりますか?私がGSIについて読んでいるほど、AWSはGSIが独自のパーティションキーとソートキーを指定する際の柔軟性を強調しているようです。私は、ソートキーを指定せずにGSIを追加することはあまりよく分かりません。DynamoDBテーブルにソートキーを持たないグローバルセカンダリインデックスを持つポイントは何ですか?

答えて

3

GSIのパーティションキーのみを使用すると、パーティションキーとして選択した属性を使用してDynamoDBテーブルをクエリできます。例えば

、あなたは3つの属性を持つテーブルを持っている場合:あなたのテーブルの主キーを聞かせて構成されている場合

  1. userId
  2. username
  3. updatedAt

のは、としてuserIdを言いますパーティションキーとupdatedAtを並べ替えキーとして使用します(これにより、テーブルのLISユーザーがupdatedAt日付でソートした場合)、パーティションキーとしてusernameのみのGSIを追加して、特定のユーザー名に対して同じテーブルを照会することができます。

+0

返信いただきありがとうございます。私はあなたのコメントを読んだ後、より多くの研究を行いました。ありがとう! – shle2821

2

GSIにはインデックスキーを使用できるため、テーブル上のキーに非常に高速にアクセスできます(O(n))。

関連する問題