インデックスとは?
いんでっくす
インデックスとは、データベースや検索システムで高速な検索を実現するために作成される索引データ構造のことです。
インデックス(index)とは、データベースや検索エンジンなどで、特定のデータを素早く見つけ出すために事前に作成しておく索引(インデックス)のことです。本の巻末索引と同じ発想で、大量のデータから目的の情報を効率よく取り出せるようにします。
データベースのインデックスは、指定した列の値とその行の位置情報(ポインタ)を整理した構造体です。インデックスがない場合、DBは全行を順に確認する「フルスキャン」が必要ですが、インデックスがあれば対象行に直接アクセスできるため、検索速度が大幅に向上します。
インデックスの主な特徴と注意点は以下のとおりです。
- 検索・JOIN・ソートの速度が劇的に向上する
- インデックス自体がディスク領域を消費するためストレージへの影響がある
- データの追加・更新・削除のたびにインデックスも更新されるため書き込み速度が若干低下する
- カーディナリティ(値の種類の多さ)が高い列に設定すると効果的
また「インデックス」はWeb・SEOの文脈では、検索エンジンがページをクロールして自社データベースに登録することを指します(インデックス登録)。プログラミングでは配列の要素番号を「インデックス」と呼ぶこともあります。
使い方・例文
データベースのユーザーテーブルで email 列にインデックスを作成すると、メールアドレスによる検索が何百万件のデータがあっても瞬時に完了するようになります。
この用語をシェア
最終更新: