Query Optimizer
クエリオプティマイザは、SQLを最適な実行プランに変換する。統計情報でコストを推定し、結合順序とアクセスパスを選択する。
目的
データベース性能の中核コンポーネントを理解し、スロークエリと実行プランを分析するための知識である。
メカニズム
SQL解析 → 論理プラン → 物理プランの流れで処理される。ルールベースの最適化(述語プッシュダウン、列プルーニング)とコストベースの最適化(CBO)を組み合わせる。等価なプランの空間を生成し、プランごとにI/O・CPUコストを推定して最良のものを選ぶ。
ユースケース
- スロークエリの分析
- 実行プランのチューニング
- データベース内部の理解