コストベースオプティマイザが最適実行計画を選択するために用いる統計情報
コストベースのオプティマイザ(CBO: Cost-Based Optimizer)が最適な実行計画を作成する際に必要なものは「統計情報」です。 RDBMSのオプティマイザは、発行されたSQL文に対して複数のアクセスパス(全表スキャン、インデックススキャン、ネステッドループ結合、ハッシュ結合など)を比較検討します。 コストベースオプティマイザは、テーブルのレコード件数、データブロック数、各列の値の個別数(カーディナリティ)、データ分布の偏り(ヒストグラム)、インデックスの階層数などの「統計情報(カタログ情報)」をもとに、ディスクI/O回数やCPU使用量を見積もって最も処理負荷の低い実行計画を選択します。 「ディメンジョンテーブル」は、データウェアハウスの多次元分析(スタースキーマ等)において、時間や地域、顧客などの分析軸を定義するテーブルです。オプティマイザが実行計画を作成するための基礎情報ではありません。 「待ちグラフ」は、トランザクション間のリソース占有・待機関係を有向グラフで表現し、デッドロックの発生を検知・解消するための管理情報です。 「ログファイル(WAL/更新履歴ログ)」は、トランザクションのACID特性を保証し、障害復旧(ロールバックやロールフォワード)を行うための履歴記録です。
オプティマイザと実行計画
コストベースのオプティマイザがSQLの実行計画を作成する際に必要なものはどれか。
出典
令和3年度 春期 応用情報技術者試験 午前 問30
ア
ディメンジョンテーブル
イ
統計情報
ウ
待ちグラフ
エ
ログファイル
前の問題
スキップ
【正解・解説】コストベースオプティマイザが最適実行計画を選択するために用いる統計情報|令和3春 応用情報 午前 問30 | IT資格ラボ