购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.4 数据库系统的体系结构

为理解数据库系统,需要对数据库系统的体系结构有足够的了解。数据库系统的体系结构是数据库系统的一个总的框架。数据库系统的体系结构因设计者对数据库结构考虑层次和角度的不同而不同。从数据库管理系统的角度看,数据库系统通常采用三级模式结构。

1 . 数据库系统的三级模式结构

数据库系统的三级模式结构包含对数据的3个抽象级别。它把数据的具体组织留给数据库管理系统(DBMS)去做,用户只需抽象地处理数据,而不必关心数据在计算机中的表示和存储。

数据库系统的三级模式结构如图1.9所示。

(1)模式

模式(Schema,即概念模式,也称逻辑模式)是数据库的总框架,是对数据库中全体数据的逻辑结构和特征的描述。模式不涉及数据的物理存储,故称为DBA(Database Administrator,数据库管理员)视图,一个数据库只有一个模式。模式用来描述数据库中关于目标存储的逻辑结构和特性,基本操作、目标与目标及目标与操作的关系和依赖性,以及数据的安全性、完整性等。

(2)外模式

外模式(External Schema,也称子模式),通常是模式的一个子集。外模式面向用户,故称为用户视图,一个数据库可以有多个外模式。它属于模式的一部分,用来描述用户数据的结构、类型、长度等。

图1.9 数据库系统的三级模式结构

所有的应用程序都是根据外模式中对数据的描述编写的,而不是根据模式中对数据的描述编写的。在同一个外模式中可以编写多个应用程序,但一个应用程序只能对应一个外模式。根据应用程序的不同,一个模式可以对应多个外模式。外模式可以互相覆盖。

(3)内模式

内模式(Internal Schema,也称存储模式)是对数据物理结构和存储结构的描述,是数据在数据库内部的表示方式。内模式是由系统程序员设计实现的,故称为系统程序员视图,一个数据库只有一个内模式。内模式是对数据库在物理存储器上具体实现的描述,它规定了数据在存储介质上的物理组织方式、记录寻址技术,定义了物理存储块的大小、溢出处理方法等,与模式相对应。

3种模式体现了对数据库的3种不同的观点。模式表示概念数据库,体现了数据库的总体观;内模式表示物理数据库,体现了数据库的存储观;外模式表示用户数据库,体现了数据库的用户观。

2 . 两层映像与数据独立性

事实上,3种模式中只有内模式是真正存储数据的,而模式和外模式仅是表示数据的逻辑方法,可以放心大胆地使用它们,这是由数据库管理系统的映像功能实现的。在这3种模式之间存在两种映像。

(1)外模式/模式映像,用于将用户数据库与概念数据库联系起来。

外模式/模式映像一般是放在外模式中描述的。三级模式结构中,模式即全局逻辑结构,是数据库的中心与关键,它独立于其他层次。因此设计数据库模式结构时应首先确定数据库的模式。

对于每一个外模式,数据库系统都有一个外模式/模式映像,它定义了该外模式与模式之间的对应关系。该映像的定义通常包含在外模式描述中。当模式改变时(如增加新的关系和新的属性、改变属性的数据类型等),数据库管理员对各个外模式/模式映像做相应的改变,可以使外模式保持不变,而应用程序是依据数据的外模式编写的,因而应用程序不必修改,保证了数据与应用程序的逻辑独立性(Logical Data Independence),简称数据的逻辑独立性。

(2)模式/内模式映像,用于将物理数据库与概念数据库联系起来。

模式/内模式映像是唯一的,它定义了数据库全局逻辑结构与存储结构之间的对应关系。该映像的定义通常包含在模式描述中。当数据库的存储结构改变时,数据库管理员对模式/内模式映像做相应的改变,可以使模式保持不变,因而应用程序也不必改变,保证了数据与应用程序的物理独立性(Physical Data Independence),简称数据的物理独立性。

这两种映像可以使数据库有较高的数据独立性,也可以使逻辑结构和物理结构得以分离,换来用户使用数据库的方便,最终把用户对数据库的逻辑操作导向对数据库的物理操作。 sdoDdlIh0fcAMP/dFUbzj3sWmBsRVy34sXAezlh8gJZMkAMNb3QLvcEkb0NP8ytn

点击中间区域
呼出菜单
上一章
目录
下一章
×