データベーススペシャリスト暗記無料で始める

オプティマイザとは?オプティマイザ

オプティマイザとは、同じ結果を返す処理手順の候補を列挙し、推定コストが最小のものを実行計画として選ぶDBMSの構成要素。固定の優先順位で決めるルールベース(RBO)と、統計情報から行数とI/O量を見積もって比較するコストベース(CBO)があり、現在の主要製品はCBOを採る。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の頻出用語/午前II

別名:問合せ最適化、query optimizer

データベースSPを最短で暗記・合格する →

背景

非手続型のSQLでは、開発者は結果だけを指示して手順を書かない。誰かが手順を決めなければ実行できないため、DBMSの内部に手順を選ぶ係が置かれた。おかげでアプリを直さずに索引追加やデータ増加へ自動で追従できる一方、なぜその手順になったのかが外から見えにくくなった。RBOとCBOで判断根拠が違うことが、この見えにくさの出発点として問われる。

具体例

Oracle Databaseは9iを最後にRBOを非推奨とし、以降はCBOへ一本化した。受注表と顧客表の結合で、顧客側の絞込みが数件と見積もられれば入れ子ループを、数十万件と見積もられればハッシュ結合を、まったく同じSQLに対して選び分ける。

試験での引っ掛け

統計情報を参照するのはCBOだけで、RBOは「索引があれば使う」といった順位表に従うため統計を見ない。この向きを逆にする出題が定番。またコストは推定値なので、CBOが選んだ計画が実測でも最速とは限らない。

関連用語

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

データベースSPを最短で暗記・合格する →

試験での特徴
  • 分野:午前II
  • 統計情報を参照するのはCBOだけで、RBOは「索引があれば使う」といった順位表に従うため統計を見ない。