首页 理论教育数据库系统的模式结构

数据库系统的模式结构

【摘要】:模式反映的是数据的结构及其关系,而实例反映的是数据库某一时刻的状态。数据库系统的体系结构是数据库系统的一个总框架。图1—6数据库系统模式结构1.三级模式结构数据库的三级模式结构由外模式、模式、内模式组成。外模式是保证数据库安全性的一个有力措施。数据的独立性是数据库系统的最重要的特性之一,可使应用程序维护工作量大大减轻。

为了更好地理数据库的综合设计,再来进一步介绍一下模式概念。如前所述,模式是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及类型的描述,不涉及具体的值。模式的一个具体值称为模式的一个实例(instance),同一个模式可以有很多实例。模式是相对稳定的,而实例是相对变动的。模式反映的是数据的结构及其关系,而实例反映的是数据库某一时刻的状态。

对数据的结构及联系,需要用到抽象数据模型,而数据模型中有“型”(type)和“值”(value)的概念。型是指对某一类数据的结构和属性的说明,值是型的一个具体赋值。例如,学生档案定义为“学号,姓名,性别,系别,年龄,籍贯”这样的记录型,而“2015 02,张三,男,计算机,19,陕西”则是该记录型的一个记录值。

数据库系统的体系结构是数据库系统的一个总框架。尽管实际数据库软件产品种类繁多,使用的数据库语言有差异,基础操作系统不同,采用的数据模型有差异,但是绝大多数数据库系统都只有三级模式的结构特征,如图1-6所示。

图1—6 数据库系统模式结构

1.三级模式结构

数据库的三级模式结构由外模式、模式、内模式组成。(www.chuimin.cn)

(1)外模式。又称子模式或用户模式,是模式的子集,是数据的局部逻辑结构,也是数据库用户看的数据视图。外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据相对它们来说是不可见的,例如通过数据输入窗体接口。外部模型允许在用户应用软件和数据模型之间创建关系。

(2)模式。又称逻辑模式或概念模式,是数据库中全体数据的全局逻辑结构和特性的描述,也是所有用户的公共数据视图。实际上模式是数据库数据在逻辑上的视图,一个数据库只有一个模式。数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。定义模式时不仅要定义数据的逻辑结构,例如,数据记录由哪些数据项构成,数据项的名字、类型、取值范围等,而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。例如,表和约束条件。

(3)内模式。又称存储模式,是数据在数据库内部的表示,即数据的物理结构和存储方式的描述。例如,通过表的数据存储和索引的使用来加速数据访问。

2.数据独立性

数据库系统的三级模式是对数据的三级抽象,数据的具体组织由数据库管理系统负责,使用户能随意地处理数据,而不必考虑数据在计算机内部的表示和存储方法。为了实现三个抽象层次的转换,数据库系统在三级模式中提供了两次映像,即外模式/模式映像和模式/内模式映像。所谓映像就是存在某种对应关系。

由于上述的两次映像,使数据库管理中的数据具有两个层次的独立性。一个是数据物理独立性。模式和内模式之间的映像是数据的全局逻辑结构和数据的存储结构之间的映像。当数据库的存储结构发生了改变,例如,存储数据库的硬件设备变化或存储方法改变引起内模式发生变化,由于模式和内模式之间的映像,使数据的逻辑结构可以保持不变,因此应用程序可以不必修改。另一个是数据的逻辑独立性。外模式和模式之间的映像是数据的全局逻辑结构和数据的局部逻辑结构之间的映像。例如,数据管理的范围扩大或某些管理的要求发生改变后,数据的全局逻辑结构发生变化,对不受全局变化影响的那些局部而言,最多改变外模式和模式之间的映像,基于这些局部逻辑结构所开发的应用程序就不必修改。数据的独立性是数据库系统的最重要的特性之一,可使应用程序维护工作量大大减轻。