Slide 25
Slide 25 text
MySQL の実行計画を見てみる
● Rank 2 の場合(都合によりこっちを先に)
○ possible_keys が PRIMARY 、 range / Using where
■ id は主キーのため PRIMARY INDEX があるため、範囲を絞るのは全探索せずに済む
● id については重複を許さないため、左から索引がなくても綺麗に並んでる
● イメージとしては、右から舐めていくと 1 ~ 3234 ,3235 ~ MAX となっており、
隣接データへのポインタがあるので、順方向、逆方向については早く取れる
■ user_id については、 INDEX を使えておらず、範囲内を全探索している
● id が 3235 ~ MAX の実データについてのポインタがあり、そこからデータを見ていって
いるイメージ(のため、 3235 ~ MAX までのデータを全部見ている )
○ user_id : id な索引を作って、user_id 順に並べてあげると、すぐに見つかる