トランザクション処理 (全65問中10問目)
No.10
コストベースのオプティマイザがSQLの実行計画を作成する際に必要なものはどれか。
出典:令和3年春期 問30
- ディメンジョンテーブル
- 統計情報
- 待ちグラフ
- ログファイル
分類
テクノロジ系 » データベース » トランザクション処理
正解
イ
解説
オプティマイザ(optimizer)は、SQL文が実行された際、対象となるレコードの取得時間を最小とするようにアクセスパスを最適化するデータベース管理システム(DBMS)の機能です。レコードを取得するためには、インデックスの使用や表全体の読込みなどの複数の方法が考えられます。オプティマイザはクエリの実行計画を評価し、問合せ内容に応じて最も効率がよい方法を選択します。
アクセスパスを選択する基準には「コストベースアプローチ」と「ルールベースアプローチ」の2つがあり、コストベースアプローチが一般的です。コストベースアプローチは、DBMSに蓄積された表やインデックスの統計情報をもとにコストを見積り、その結果に基づいて最も効率的な実行計画を作成する方法です。よって、コストベースアプローチにおいて実行計画を得る際に必要となる情報は「統計情報」が適切です。
なお、ルールベースアプローチは、あらかじめ決めておいたアクセスパスの優先順位などのルールに、実行しようとするSQL構文と表やインデックスの定義情報を当てはめて実行計画を作成する方法です。
アクセスパスを選択する基準には「コストベースアプローチ」と「ルールベースアプローチ」の2つがあり、コストベースアプローチが一般的です。コストベースアプローチは、DBMSに蓄積された表やインデックスの統計情報をもとにコストを見積り、その結果に基づいて最も効率的な実行計画を作成する方法です。よって、コストベースアプローチにおいて実行計画を得る際に必要となる情報は「統計情報」が適切です。
なお、ルールベースアプローチは、あらかじめ決めておいたアクセスパスの優先順位などのルールに、実行しようとするSQL構文と表やインデックスの定義情報を当てはめて実行計画を作成する方法です。