数据库系统的结构
主要讲解数据库内部的结构
一. 从数据库应用开发人员的角度来看
1.数据库采用三级模式架构,是数据库系统内部的系统架构
2.模式
(1)是对数据库逻辑结构和特征的描述
(2)是型的描述,不涉及具体值。
比如:数据库某一时刻的状态——模式的一个具体值(实例),而同一个模式可以有很多实例。
(3)模型是相对稳定的,实例是随数据库中数据的更新而变动的
3.数据库系统的三级模式结构
(1)模式(逻辑模式)
1)数据库中全体数据的逻辑结构和特征的描述
2)一般,一个应用的数据库有一个模式
3)模式是数据库系统模式结构的中心(和硬件,开发工具,设计语言等无关)
4)定义模式
(2)外模式(子模式或用户模式)
1)数据库用户使用的局部数据的逻辑结构和特征的描述,数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
2)模式和外模式的关系
a.一个模式可以有若干个外模式
b.模式的某一数据,在不同的外模式中有不同的表示
3)外模式和应用的关系:一个外模式可以对应多个应用,但一个应用只能有一个外模式
4)外模式的作用:保证数据库的安全性;简化用户视图(即用户只访问外模式,外模式是模式的子集)
(3)内模式(存储模式)
1)是数据物理结构和存储方式的描述
2)是数据在数据库内部的表示方式(存储方式,索引的组织方式,数据是否压缩,加密等)
3)一个数据库只有一个内模式
4.数据库的二级映像功能和数据独立性
(1)外模式 / 模式映像
1)每一个外模式都有一个“外模式/模式映像”
2)映像通常定义在外模式中
3)作用:保证数据的逻辑独立性(应用程序不要因为数据的逻辑结构变化而发生改变)
a.当模式改变时,通过修改映像,保障外模式不变
b.外模式不变,即应用程序不必修改,保证了数据和程序的逻辑独立性,简称为数据的逻辑独立性
(2)模式 / 内模式映像
1)定义了数据全局逻辑结构和存储结构之间的对应关系
2)模式 / 内模式映像是唯一的,该映像通常定义在模式中
3)作用:保证数据的物理独立性
a.当数据库的存储结构改变,通过修改“模式/内模式映像”,使得模式不变
b.模式不变,应用程序不变,保证了数据和程序的物理独立性,简称数据的物理独立性
(3)数据库的二级映像功能保证了数据的独立性
1)保证了应用程序的稳定性,即除非用户需求改变,否则应用程序不需要修改
2)从“以程序为中心”变成了“以数据为中心”
3)简化了应用程序的编制,减少了应用程序的维护和修改(数据的存取由数据库管理系统管理)
二. 从用户的角度来看
1.单用户,主从式,分布式结构;客户--服务器;浏览器--应用服务器 / 数据库服务器