ホーム > データベーススペシャリスト試験 > 2009年
データベーススペシャリスト試験 2009年 午前2 問10
関係データベースの表において、検索速度を向上させるために, 列Zにインデックスを付与する。ア~エは, 列Zの値が等しい行の数を示したものである。インデックスを付与することによって, 1行当たりの平均検索速度が最も向上するものはどれか。ここで、各行は等頻度で検索されるものとする。

ア:
イ:
ウ:
エ:(正解)
解説
関係データベースの表において、検索速度を向上させるために列Zにインデックスを付与する問題【午前2 解説】
要点まとめ
- 結論:列Zの値が均等に分布している選択肢エが最も検索速度の向上に寄与します。
- 根拠:インデックスの効果は、検索対象のデータが均等に分散しているほど高く、特定の値に偏ると効果が薄れます。
- 差がつくポイント:インデックスの選択はデータの分布を理解し、均等分布に近いものを選ぶことが重要です。
正解の理由
選択肢エは、列Zの各値(p~u)が200行ずつ均等に存在しており、検索対象が均等に分散しています。これにより、インデックスを利用した検索時に特定の値に偏ることなく効率的にアクセスでき、平均検索速度が最も向上します。逆に、他の選択肢は特定の値に行数が偏っているため、インデックスの効果が限定的です。
よくある誤解
インデックスは単に付ければ速くなると思いがちですが、データの偏りが大きいと効果が薄くなります。均等分布が重要なポイントです。
解法ステップ
- 各選択肢の列Zの値ごとの行数を確認する。
- 行数の偏りがどれほどあるかを把握する。
- インデックスの効果は均等分布に近いほど高いことを理解する。
- 均等に分布している選択肢を選ぶ。
- 選択肢エが均等分布であるため、最も効果的と判断する。
選択肢別の誤答解説
- ア:行数がpとqに偏り、他は0。偏りが大きくインデックス効果が限定的。
- イ:pに1000行と偏りが非常に大きく、インデックス効果が低い。
- ウ:行数が徐々に増加しており偏りが大きい。均等分布ではないため効果が薄い。
- エ:各値が200行ずつ均等に分布し、インデックス効果が最大化される。
補足コラム
インデックスは検索速度を向上させるための重要な技術ですが、効果はデータの分布に大きく依存します。特に、等頻度(均等分布)であれば、インデックスの探索効率が最大化されます。逆に、偏りが大きい場合は特定の値に対する検索が集中し、インデックスのメリットが減少します。
FAQ
Q: インデックスを付けると必ず検索が速くなるのですか?
A: いいえ。データの分布や検索条件によっては効果が限定的になることがあります。
A: いいえ。データの分布や検索条件によっては効果が限定的になることがあります。
Q: 偏ったデータでもインデックスは意味がありますか?
A: 偏りが大きい場合は効果が薄れますが、全く意味がないわけではありません。状況に応じて使い分けが必要です。
A: 偏りが大きい場合は効果が薄れますが、全く意味がないわけではありません。状況に応じて使い分けが必要です。
関連キーワード: インデックス, 検索速度, データ分布, 均等分布, 関係データベース