IT用語帳

クエリオプティマイザ

Query Optimizer

くえりおぷてぃまいざ

SQL文の実行計画を自動的に生成・最適化するDBMSの機能。テーブルの統計情報、インデックスの有無、結合方法、アクセスパスなどを考慮して、最も効率的な実行計画を選択する。
データ操作 > 問合せ最適化

関連キーワードの用語

DB実行計画

DBMSがSQL文を処理する際の手順を表したもの。テーブルスキャン、インデックススキャン、結合方法(ネステッドループ、ハッシュ結合、ソートマージ結合)、ソート方法などの操作順序を含む。EXPLAIN文で確認できる。

DBヒント句

SQL文にコメント形式で記述し、オプティマイザに対して実行計画の選択を誘導する指示。使用するインデックス、結合方法、結合順序などを指定できる。統計情報が不正確な場合などの一時的な対策として有効。

DBEXPLAIN文

SQL文の実行計画を確認するためのコマンド。オプティマイザが選択したアクセスパス、結合方法、推定行数、コストなどの情報を表示する。SQLチューニングの第一歩として実行計画を確認するのに用いる。

DB定義域(ドメイン)

関係モデルにおいて、属性がとりうる値の集合。例えば「年齢」属性のドメインは正の整数、「性別」属性のドメインは{'男','女'}など。SQLではCHECK制約やデータ型で制限を実現する。

DB関係代数

関係モデルに対する操作を数学的に定義した代数体系。選択、射影、結合、和、差、直積、商などの演算からなる。SQLの理論的基盤であり、問合せ最適化の基礎となる。

DB選択(セレクション)

関係代数の基本演算の1つで、リレーションから指定した条件を満たすタプルを取り出す操作。SQLのWHERE句に対応する。記号σ(シグマ)で表される。