平成24年春期試験問題 午前Ⅱ 問7
問7解説へ
体現ビュー(Materialized view)に関する記述のうち,適切なものはどれか。
- 同じデータが実表と体現ビューとに重複して格納されることはない。
- 更新可能であるとDBMSが判断したビューのことである。
- 実表のようにデータベースに格納されるビューのことである。
- 問合せや更新要求のたびにビュー定義をSQL文に組み込んで処理する。
正解 ウ問題へ
分野:テクノロジ系
中分類:データベース
小分類:データベース設計
中分類:データベース
小分類:データベース設計
広告
解説
体現ビューとは、実表のように実際の値をもちデータベースに格納されているビューです。
本来ビューは実値をもたない仮想的な表で、その定義がメタデータとしてデータディクショナリに格納されているだけです。ビューに問合せがあるとDBMSはその度に実表を関係演算して導出結果を返します。またビューに対する更新処理が要求された場合には、ビュー定義を基にビューに対する更新文を実表に対する更新文に変換することになります。このようにビュー定義が組み込まれて処理されていくプロセスをビュー合成と言います。
体現ビューは、上記のようなビュー操作のオーバーヘッド(変換処理やネットワーク負荷)を小さくするために考案された手法で、実表に対する問合せ結果のキャッシュを値としてもたせることで問合せを速く処理することを目的としています。また実際の値をもつ体現ビューには実表と同様にインデックスを定義できるため、問合せ時間を大幅に短縮することも可能です。しかしデータを重複してもつことになるため、一貫性の維持やディスク容量の面では通常のビューよりも不利になります。
特にデータウェアハウスでは、問合せの度に実表に対して問合せを行うことは非常に高コストなので体現ビューが積極的にサポートされています。
本来ビューは実値をもたない仮想的な表で、その定義がメタデータとしてデータディクショナリに格納されているだけです。ビューに問合せがあるとDBMSはその度に実表を関係演算して導出結果を返します。またビューに対する更新処理が要求された場合には、ビュー定義を基にビューに対する更新文を実表に対する更新文に変換することになります。このようにビュー定義が組み込まれて処理されていくプロセスをビュー合成と言います。
体現ビューは、上記のようなビュー操作のオーバーヘッド(変換処理やネットワーク負荷)を小さくするために考案された手法で、実表に対する問合せ結果のキャッシュを値としてもたせることで問合せを速く処理することを目的としています。また実際の値をもつ体現ビューには実表と同様にインデックスを定義できるため、問合せ時間を大幅に短縮することも可能です。しかしデータを重複してもつことになるため、一貫性の維持やディスク容量の面では通常のビューよりも不利になります。
特にデータウェアハウスでは、問合せの度に実表に対して問合せを行うことは非常に高コストなので体現ビューが積極的にサポートされています。
- 実表と体現ビューにデータが重複して格納されることになります。
- 体現ビューには「読取り専用」「更新可能」「書込み可能」などの幾つかの種類があります。必ずしも更新可能とは限りません。
- 正しい。体現ビューは、値を格納できるように実体化されたビューです。
- 通常のビュー操作のプロセスです。
広告