データベーススペシャリスト暗記無料で始める

カバリングインデックスとは?かばりんぐいんでっくす

カバリングインデックスとは、問合せが必要とする列がすべて索引に含まれ、表本体を読まずに索引の走査だけで結果を返せる状態の索引。索引で絞った後に一行ずつ表のページへ飛ぶランダムな読み出しが丸ごと消えるため、読むページ数が桁で減る。MySQLでは実行計画にUsing index、PostgreSQLではIndex Only Scanと現れる。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の頻出用語/午前II

データベースSPを最短で暗記・合格する →

背景

索引はキーと行の位置しか持たないので、絞り込んだ後に表本体を一行ずつ読み直す工程が残る。ここは行の並び順と無関係なランダムな読み出しになり、絞り込んだ件数が多いほど効いてくる。数千行を拾う照会では、この後追いの読み出しが処理時間の大半を占めることがある。必要な列を索引側に載せてこの工程ごと消すのが被覆の考え方で、物理設計でアクセス経路を選ぶ場面で問われる。

具体例

会員表500万行(表本体20万ページ)から都道府県別の件数を数える。都道府県コードだけの索引が5,000ページなら、集計は索引の5,000ページを順に読むだけで終わり、表本体には一度も触れない。氏名も返すなら(都道府県コード, 氏名)と列を足せば被覆を保てる。

試験での引っ掛け

被覆させるほど索引が肥大し、更新のたびに維持する費用が増える。参照が速くなる代わりに書き込みが遅くなる取引関係で、無条件に有利な最適化ではない。PostgreSQLではIndex Only Scanと表示されても、可視性マップが最新でない行は結局表本体を読むので、VACUUMが追いついていないと効果が出ない。

関連用語

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

データベースSPを最短で暗記・合格する →

試験での特徴
  • 分野:午前II
  • 被覆させるほど索引が肥大し、更新のたびに維持する費用が増える。