[0024] スキーマ

平成12年度秋期 (旧)第2情報処理技術者試験より
 データベースシステムにおけるスキーマの説明として、適切なものはどれか。
実表ではない、利用者の視野による仮想的な表である。
データの性質、形式、ほかのデータとの関連などの、データ定義の集合である。
データの挿入、更新、削除、検索などの、データベース操作の総称である。
データベースを完全無欠な状態に保持するための、各種制約条件の総称である。

正解

解説

 データベースのスキーマに関する問題です。

 スキーマとは、「データベースの構造定義」の意味です。もうこれだけで正解にたどり着くことができますが、スキーマについてもうすこし細かく説明しましょう。

 現在のデータベースシステム製品の多くは、「3層スキーマ」と呼ばれる概念を導入しています。正式には、「ANSI/X3/SPARC3層スキーマ」といいます。先程も説明したとおり、スキーマとは構造定義の意味ですが、3層スキーマは、この定義を3つ層に分けて定義します。

外部スキーマ データベース利用者に必要なデータの定義。ビューなど。
概念スキーマ データベースで管理する対象の定義。テーブルなど。
内部スキーマ データの物理的な格納方法。インデックスやデータファイル配置など。

 なぜ、このような3層構造をしているのでしょうか?それは、データベースの定義を、外部、概念、内部と分けることによって、それぞれのスキーマで必要な修正が発生した場合に、他のスキーマへの変更が及ばないようにできるからです。

 下の図で説明しましょう。データベースを長期間使用することで、格納データ量は増大していきます。ハードディスクの増設が必要になりますが、3層スキーマ構造を採用しているデータベースシステムであれば、データを配置するディスクを変更するだけで、概念スキーマのテーブル構造や、外部スキーマのビューの定義は変更する必要がありません。これは、ユーザが、これまでと同じSQLで、システム変更を意識することなく、データベースを利用できることを表しています。また、概念スキーマ、外部スキーマも同様に、そのスキーマ内の変更であれば、他のスキーマへ影響を及ぼすことがありません。



 こうした3層スキーマの特徴は、システム環境が絶えず変化していく現在のデータベースシステムに適合したものといえます。

 冒頭で解答は出てしまっていますが、イが正解となります。
※ 解説の内容は執筆時点のものであり,含まれている情報の正確性,妥当性について保証するものではありません。ご注意ください・・・

関連する(かもしれない)問題