3層スキーマとデータ独立性とは?さんそうすきーまとでーたどくりつせい
3層スキーマとデータ独立性とは、データベースの記述を、利用者ごとの見え方を表す外部スキーマ、組織全体の論理構造を表す概念スキーマ、実際の格納方法を表す内部スキーマの3層に分ける枠組み。層の間に対応づけを挟むことで、下の層を変えても上の層を書き換えずに済むデータ独立性が得られる。
最終更新:2026-10-07
高度試験の午前Iを最短で暗記する →背景
初期のデータベースは、プログラムが格納形式を直接知っていたため、索引を1つ足すだけで全プログラムを直す必要があった。変更の波及を止めるには「どこまでを知ってよいか」の境界を層として先に決めるしかない。3層スキーマはその境界の置き方の標準形であり、独立性は層を分けたことの結果として出てくる。
具体例
Oracle DatabaseやPostgreSQLでビューを定義して画面に見せるのが外部スキーマ、表と列と関連の定義が概念スキーマ、表領域・ファイル配置・索引が内部スキーマにあたる。索引の追加やSSDへの移設は内部スキーマだけの変更なので、アプリケーションのSQLには手を入れなくてよい。
試験での引っ掛け
物理的データ独立性と論理的データ独立性の向きを逆に覚えやすい。内部スキーマの変更が概念スキーマに響かないのが物理的、概念スキーマの変更(列の追加など)が外部スキーマに響かないのが論理的で、後者のほうが実現は難しい。3層は「3つのデータベースがある」という意味ではなく、同じ1つのデータに対する記述の階層である。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。