0
0

More than 3 years have passed since last update.

データベース検索(インデックス有無による処理速度の検証)

Last updated at Posted at 2019-11-27

目的

  • インデックス有無が処理速度にどれだけ差を生むのか検証したい
  • その過程で、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木のアルゴリズムやらビットマップやらが用されているらしいが、
細かいことについては

データベース性能を向上させる「インデックス」を理解する

が非常に丁寧に書かれているのでおすすめだ。

以上。。。。。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0