読み方 : てんちインデックス
転置インデックス【inverted index】
転置インデックスとは?
文書集合の中に含まれる語と、その語を含む文書の対応関係を整理して保持する索引構造。「どの単語がどの文書に登場するか」を逆引きできる形式で整理したものである。

文書群から含まれる単語のインデックス(索引)を作成する場合、通常は「文書A→含まれる単語の一覧」という方向でデータが整理される。これに対し、転置インデックスは「単語X→その単語が含まれる文書の一覧」という逆方向の対応を記録する。「転置」という名称はこの「逆引き」の構造に由来している。
具体的な構造としては、各単語(厳密には「トークン」という単位)をキーとし、その単語が出現する文書IDや出現位置、出現頻度などをリスト形式で紐付けたものになる。例えば、「Python」というキーワードを検索する場合、転置インデックスの「Python」の項を参照すれば、出現する文書一覧が即座に手に入り、一件ずつすべての文書に「Python」が含まれるかを調べる必要がない。
転置インデックスは、GoogleやBingといったWeb検索エンジンのほか、ElasticsearchやApache Solrなどの全文検索エンジン、さらには文書管理システムやログ分析基盤、データベースの全文検索機能などに採用されている。数十億件にのぼる文書群から特定のキーワードを瞬時に見つけ出せるのも、この仕組みがあるためである。
一方、転置インデックスにはトレードオフも存在する。インデックスの構築にはある程度の時間と計算リソースが必要であり、文書が更新・追加されるたびにインデックスの再構築や差分更新が求められる。また、インデックス自体がストレージを消費するため、大規模なシステムでは管理コストも無視できない。