平成24年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7
テクノロジ/データベース体現ビュー(Materialized view)に関する記述のうち,適切なものはどれか。
出典:平成24年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7
- ア同じデータが実表と体現ビューとに重複して格納されることはない。
- イ更新可能であるとDBMSが判断したビューのことである。
- ウ実表のようにデータベースに格納されるビューのことである。
- エ問合せや更新要求のたびにビュー定義をSQL文に組み込んで処理する。
正解:ウ
解説
体現ビュー(Materialized view,マテリアライズドビュー)とは,ビュー定義に基づく問合せの結果(実体化されたデータ)を,実表と同様にディスク上に物理的に格納しておくビューのことである。通常のビュー(仮想ビュー)が問合せや更新要求のたびにビュー定義をSQL文に組み込んで(展開して)実表に対する処理に変換して実行するのに対し,体現ビューはあらかじめ結果を格納しておくことによって,複雑な集計処理を伴う問合せなどを高速化できる。その代わり,基となる実表が更新された場合には,体現ビューの内容を再計算又は反映(リフレッシュ)する必要があり,実表と体現ビューとでデータが重複して格納されることになる。
選択肢ごとの解説
- ア誤り。体現ビューは,実表から導出されたデータをあらためて物理的に格納するものであるため,同じ内容のデータが実表と体現ビューの両方に重複して保持されることになる。
- イ誤り。更新可能であるとDBMSが判断したビューは,通常の(仮想)ビューのうち更新可能ビューと呼ばれるものであり,体現ビューであるかどうかとは直接関係がない。
- ウ正しい。体現ビューは,ビューの問合せ結果を実表と同じようにディスク上に物理的に格納しておくビューのことである。
- エ誤り。問合せや更新要求のたびにビュー定義をSQL文に組み込んで実表への処理に展開するのは,データを格納しない通常の(仮想)ビューの動作であり,あらかじめ結果を格納しておく体現ビューの説明としては誤りである。