今回は、最もポピュラーであり、ほとんどのリレーショナルデータベースで使用することができるB-Treeインデックスを掘り下げてみます。※ORACLE,MySql等でデフォルトのインデックス。※B-Treeとは「バランスツリー」のことで検索アルゴリズムの一つとしても有名です。図で簡単に表現すると、下記のようになります。最下位のリーフブロックにて実表の物理位置(ROWID)をゲットします。階層の深さはさほど変わりません。そのため、データ量に関わらず一定の速度を保つことが可能になります。・ソートの高速化の2点についても、パフォーマンスに良い結果を得ることができます。範囲検索の高速化については、最下位のリーフブロックに前後のデータのポインタを各データにもっているので、前後のデータを連続して検索することができるためです。ソートの高速化については、B-Treeインデックス内のデータは既にソートされているため、ソート処理の必要がないためです。複数の列を使用した複合インデックス(主キーに多い)の場合は注意が必要です。複合インデックスの一部だけを使った検索では、条件によってインデックス検索がされず思うような速度が出ない場合があります。複数列で1つの一意性を保つため、インデックスではデータを特定できないためです。※oracleの場合はオプティマイザの判断によりインデックス検索されることもある。※一部のみでも、カーディナリティが高い場合など。2012.04.05こんばんは、kinokoです。最近、こんな記事を見かけました。目的のものでは無いけれど、役に立ちそうな物を見つけました。2010.11.30ぐっじょぶです。現在自分が使用している携帯電話は2年ほど前に購入した物になります。[...]ジャスウィル社員ブログとは愛知県名古屋市にあるジャスウィルで働く社員の日常を綴ったブログです。WordPress.。