平成23年度 春期 データベーススペシャリスト試験 午前II 問16
【問題16】
B+木インデックスとビットマップインデックスを比較した説明のうち、適切なものはどれか。
ANDやOR操作だけで行える検索はB+木インデックスの方が有効である。
BETWEENを用いた範囲指定検索はビットマップインデックスの方が有効である。
NOTを用いた否定検索はB+木インデックスの方が有効である。
少数の異なる値をもつ列への検索はビットマップインデックスの方が有効である。
【解説】
B⁺木インデックスとビットマップインデックスは、それぞれ特定の用途で性能を発揮します。
- B⁺木インデックス
範囲検索や連続的なデータ(数値や日付)に対して有効。NOT や範囲指定 (BETWEEN) を含む検索にも適しており、データが高頻度で更新される場合にも有効です。
- ビットマップインデックス
少数の異なる値(カーディナリティが低い列)を持つデータに対して有効。AND や OR の組み合わせ検索に適しており、高速に処理できます。データの更新が少ない場合に効果的です。
ア: ANDやOR操作だけで行える検索はB+木インデックスの方が有効である。
誤り。ANDやORといった論理演算を効率的に処理できるのはビットマップインデックスです。
イ: BETWEENを用いた範囲指定検索はビットマップインデックスの方が有効である。
誤り。範囲指定検索はB+木インデックスが得意とする分野です。
ウ: NOTを用いた否定検索はB+木インデックスの方が有効である。
誤り。否定検索はビットマップインデックスの方が効率的に処理できます。
エ: 少数の異なる値をもつ列への検索はビットマップインデックスの方が有効である。
正しい。ビットマップインデックスはカーディナリティ(値の種類)が少ない列に対して効率的です。
【答え】
エ: 少数の異なる値をもつ列への検索はビットマップインデックスの方が有効である。
出典:平成23年度 春期 データベーススペシャリスト試験 午前II 問16