SQLの最適化
キャッシュデータ
大抵は人間より賢い
なくなりつつあるが、インメモリDBなどでは採用しているものもある
ルールベース時代
FROM句のテーブルはサイズの昇順に並べる鉄則
この順番で結合の駆動表が決まった
アクセス方法
テーブルの全データを物理的な格納順序で読みだす
一度のアクセスで1行or1ページ(1ブロック)を返す
インデックスが存在しなければ利用できない
テーブルサイズが大きくなるとインデックスも深くなる
インデックス設計
パフォーマンス改善のために任意で付与されるインデックス
制約は人間が作る
良い制約を作ってあげないとオプティマイザが力を発揮できない