ローカルセカンダリインデックス(LSI)
分散データベースで、本体のデータと同じパーティションキーで分割される二次インデックス。書き込みは安い(同じノード上でローカルに更新される)が、パーティションキーを指定しない検索は全パーティションへの問い合わせになる。
仕組みはこうだ。インデックスはデータと同じ場所に置かれ、各パーティションが自分の行だけを対象にしたローカルインデックスを持つ。利点は、書き込みがローカルのインデックスを更新するだけで済むこと(ノード間通信がなく、行と原子的に更新される)。代償は、インデックス値での検索がパーティションキーを含まなければならない点で、含まない場合は全パーティションに投げて結果を統合する「スキャッターギャザー」になり、ノード数が多いと高くつく。インデックス値で分割され、読み取りが安く書き込みが高くつくグローバルセカンダリインデックスとは逆の関係にある。DynamoDBのLSIはテーブル作成時に定義する必要があり、テーブルとパーティションキーを共有する。GSIとはトレードオフが正反対である。