HOME»データベーススペシャリスト平成27年春期»午前Ⅱ 問15
データベーススペシャリスト平成27年春期 午前Ⅱ 問15
問15
B+木インデックスとビットマップインデックスを比較した説明のうち,適切なものはどれか。
- ANDやOR操作だけで行える検索はB+木インデックスの方が有効である。
- BETWEENを用いた範囲指定検索はビットマップインデックスの方が有効である。
- NOTを用いた否定検索はB+木インデックスの方が有効である。
- 少数の異なる値をもつ列への検索はビットマップインデックスの方が有効である。
- [出題歴]
- データベース H23特別 問16
- データベース H25春期 問15
- データベース H30春期 問15
分類
テクノロジ系 » データベース » トランザクション処理
正解
エ
解説
それぞれのインデックス法には次のような特徴があります。
- B+木インデックス
- 木の深さが一定で葉のみが値をもつ平衡木を用いたインデックスで現在最も普及している。データ量が増加してもパフォーマンスの低下が少なく、どのキー値に対してもランダム検索や範囲検索、挿入・更新・削除を効率よく行うことができる。しかしデータの分布に偏りがある場合や、NULL値及び否定を含む検索条件では効果を発揮できない。
- ビットマップインデックス
- キーが取り得る値の種類が数個程度と少ない場合に適したインデックスで、それぞれのキー値と対応するビットマップ(0,1の配列)を作成する。B+インデックスとは異なりNULL値の検索ができ、WHERE句にANDやORなどが含まれる検索を高速に実行できるメリットがある。ただし挿入・更新・削除には時間が掛かる。データウェアハウス環境で広く使用されている。
- ANDやORだけで行う検索は、ビット演算を使用できるビットマップインデックスの方が高速に行えます。
- 範囲指定検索はB+木インデックスの方が有効です。
- NOTや"!=","<>"を用いた否定検索にはB+木インデックスが効かないため、ビットマップインデックスの方が有効です。
- 正しい。ビットマップインデックスは行数に対して少ない種類の値しかとらない列で有効なインデックスです。