関係データベースの表において、検索速度を向上させるために、列Zにインデックスを付与する。
ア〜エは、列Zの値が等しい行の行の数を示したものである。
インデックスを付与することによって、1行当たりの平均検索速度が最も向上するものはどれか。
ここで、各行は等頻度で検索されるものとする。
ア |
|
||||||||||||||
イ |
|
||||||||||||||
ウ |
|
||||||||||||||
エ |
|
答え エ
【解説】
それぞれの場合の検索にかかる時間の期待値を求める。
ここで、n個のデータから検索するのにかかる時間はnとして考える。
ア |
600×(600÷1200) + 600×(600÷1200) = 600 |
||||||||||||||
イ | 1000×(1000÷1200) + 200×(200÷1200) = 866.66… | ||||||||||||||
ウ | 20×(20÷1200) + 40×(40÷1200) + 80×(80÷1200) + 160×(160÷1200) + 300×(300÷1200) + 600×(600÷1200) = 403.33… | ||||||||||||||
エ | 200×(200÷1200) + 200×(200÷1200) + 200×(200÷1200) + 200×(200÷1200) + 200×(200÷1200) + 200×(200÷1200) = 200 |
【キーワード】
・インデックス