基本情報技術者試験 - 令和6年1月修了 - 問21
DBMSが受け付けたクエリを実行するまでの処理の流れを表している。①~③に入る処理の組合せとして,適切なものはどれか。
クエリ → [ ① ] → [ ② ] → [ ③ ] → [ 実行 ]
クエリ → [ ① ] → [ ② ] → [ ③ ] → [ 実行 ]
| ① | ② | ③ | |
| ア | コード生成 | 構文解析 | 最適化 |
| イ | コード生成 | 最適化 | 構文解析 |
| ウ | 構文解析 | コード生成 | 最適化 |
| エ | 構文解析 | 最適化 | コード生成 |
答え : エ
分野 : テクノロジ系 › 技術要素 › データベース › データベース方式
解説 :
DBMSがクエリ(データベースへの問い合わせ)を受け取ってから実際に実行するまでには,いくつかの段階を経ます。
まず最初に行われるのが「構文解析」で,これはクエリの文法が正しいかどうかをチェックし,内部的な処理しやすい形式に変換する処理です。次に行われるのが「最適化」で,これは同じ結果を得るための複数の実行方法の中から,最も効率よく処理できる方法(実行計画)を選び出す処理です。
最後に行われるのが「コード生成」で,最適化によって決まった実行計画をもとに,実際にデータベースエンジンが実行できる形式のコードを作り出す処理です。したがって,①が構文解析,②が最適化,③がコード生成となり,正解は「エ」です。
他の選択肢は,これらの処理の順序が入れ替わっており,例えば構文解析を行う前にコード生成や最適化を行うことはできないため,いずれも処理の流れとして不自然です。
分野 : テクノロジ系 › 技術要素 › データベース › データベース方式
解説 :
DBMSがクエリ(データベースへの問い合わせ)を受け取ってから実際に実行するまでには,いくつかの段階を経ます。
まず最初に行われるのが「構文解析」で,これはクエリの文法が正しいかどうかをチェックし,内部的な処理しやすい形式に変換する処理です。次に行われるのが「最適化」で,これは同じ結果を得るための複数の実行方法の中から,最も効率よく処理できる方法(実行計画)を選び出す処理です。
最後に行われるのが「コード生成」で,最適化によって決まった実行計画をもとに,実際にデータベースエンジンが実行できる形式のコードを作り出す処理です。したがって,①が構文解析,②が最適化,③がコード生成となり,正解は「エ」です。
他の選択肢は,これらの処理の順序が入れ替わっており,例えば構文解析を行う前にコード生成や最適化を行うことはできないため,いずれも処理の流れとして不自然です。