クラスタ化インデックス・非クラスタ化インデックス

2021.03.20

インデックスが効かないカラム(効果が薄いカラム)

  • 計算が含まれるカラム
  • 部分一致
  • データのバリエーションが少ないカラム
    • 例:性別
  • よく更新処理が走るカラム
    • 取得コストよりも、インデックス張替えコストが高くついてしまう
    • インデックスの張替えは、張替えの必要がおきたときその場で張替えをしている
    • 例:日時系のデータ

クラスタ化インデックス

  • リーフノードにデータそのものが物理的に並び替えられている
  • プライマリキーで使われているインデックス
  • データをソートして格納するので、1つのテーブルに対して一つまでしか作成できない。
  • インデックスを貼られたカラム以外の情報も取得可能

非クラスタ化インデックス

  • リーフノードに**キー(データの場所)**が並び替えられている
  • 1つのテーブルに複数貼れるが、インデックスを貼ったカラムの情報は取得できない
  • キー参照をいかに発生させないかが重要
  • PKのみでは取得できない条件のカラムに指定する
  • Whereには入っていないが、selectだけに入っているものは付加列に入れる

キー参照

インデックスを貼っていないカラム(データ)を取りに行くこと。パフォーマンスが悪い。