平成30年度 春期 午前Ⅱ 問15
トランザクション処理
インデックスを比較した説明
B^+木インデックスとビットマップインデックスを比較した説明のうち,適切なものはどれか。
- アAND操作やOR操作だけで行える検索は,B^+木インデックスの方が有効である。
- イBETWEENを用いた範囲指定検索は,ビットマップインデックスの方が有効である。
- ウNOTを用いた否定検索は,B^+木インデックスの方が有効である。
- エ少数の異なる値をもつ列への検索は,ビットマップインデックスの方が有効である。
答えと解説を見る
✓ これが正解エ少数の異なる値をもつ列への検索は,ビットマップインデックスの方が有効である。
解説
値の種類が少ない列への検索には、ビットマップインデックスが向きます。
ビットマップインデックスは、列がとり得る値ごとに、各行がその値を持つかどうかを1と0のビットの並びで表す索引です。見分ける軸は、値の種類の数と、検索の条件の形です。性別のように異なる値が少ない列では、値ごとのビット列が少なくて済み、索引が小さくまとまります。そのため、少数の異なる値をもつ列への検索には、ビットマップインデックスの方が有効です。また、複数の条件のAND・OR・NOTは、ビット列どうしのビット演算でまとめて処理できます。一方、値の大小の順に並んだB^+木インデックスは、範囲を指定した検索に向いています。値の種類が少なければビットマップ、範囲ならB^+木、と覚えると選べます。
ほかの選択肢はなぜ違うのか
- アAND操作やOR操作だけで行える検索は,…:ANDやORで条件を組み合わせる検索は、ビット列どうしのビット演算で一度に処理できるビットマップインデックスの方が有効です。B^+木インデックスでは、条件ごとに索引をたどった結果を突き合わせることになります。
- イBETWEENを用いた範囲指定検索は,ビ…:BETWEENによる範囲の指定は、値の大小の順にキーが並び、葉どうしもつながっているB^+木インデックスの方が有効です。ビットマップインデックスは値ごとのビット列なので、範囲内の値を一つずつ集める必要があります。
- ウNOTを用いた否定検索は,B^+木インデ…:NOTによる否定の検索は、ビット列を反転させるだけで該当する行を求められるビットマップインデックスの方が有効です。B^+木インデックスは、指定した値に一致する行を探す用途に向いています。
この問題の用語
- OR数学の手法を使って、いくつかの案から最も有利なものを選ぶ考え方です。期待される費用や利益を計算して比べるときに使います。
出典:平成30年度 春期 データベーススペシャリスト試験 午前Ⅱ 問15
同じ用語が出る問題
- 令和6年度 秋期 午前Ⅱ 問10:副問合せに関する問題(OR)
- 令和5年度 秋期 午前Ⅱ 問10:COALESCEに関する問題(OR)
- 令和4年度 秋期 午前Ⅱ 問12:相関副問合せに関する問題(OR)
- 平成27年度 春期 午前Ⅱ 問15:インデックスを比較した説明(OR)
- 平成25年度 春期 午前Ⅱ 問15:インデックスを比較した説明(OR)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)