目的
- インデックス有無が処理速度にどれだけ差を生むのか検証したい
- その過程で、B木についても少し理解したい
対象読者
- データベースについて学んでいる方
- CSについて学び始めた学生
始める上での準備と環境
- 今回使用した環境はGoogleが提供するColaboratory
- 使用言語はpython
- 使用するデータは予めcsv等にまとめておく
- 使用データは1147620行のデータ
コードについて
- 僕のgithub
- コード内容は僕が使用したデータに合わせてあるので、都度書き直して、、、
検証結果
範囲が10000~10100を検索
- インデックスなし : 0.290917145000094
- インデックスあり : 4.710936333000063
範囲が10000~10010を検索
- インデックスなし : 10.85402692900015
- インデックスあり : 0.285733380000237
範囲が10000~10001を検索
- インデックスなし : 68.63662464900017
- インデックスあり : 0.263980986000206
検証結果より
インデックスの有無で探索処理時間にこれだけの差が生まれることが証明された。
B木のアルゴリズムやらビットマップやらが用されているらしいが、
細かいことについては
が非常に丁寧に書かれているのでおすすめだ。
以上。。。。。。。