一、引言
同人工管理数据和文件系统管理数据相比,数据库管理数据最主要的优点是数据独立性高。数据独立性是数据库领域中的一个常用术语和重要概念,包括数据的物理独立性和逻辑独立性
二、数据与数据结构
1、信息
在数据管理领域,数据与信息是分不开的,一般把信息理解为关于现实世界事物存在方式或运动状态的反映
2、数据
而数据,通常指用符号记录下来的、可以识别的信息,或称为信息的载体
信息是数据的内涵,是对数据语义的解释
3、数据结构
(1)数据结构是指数据对象在计算机中的组织方式,包括数据的逻辑结构和物理结构两个方面
(2)数据的逻辑结构是用户可见的数据组织方式 ,有表结构、树结构和图结构等
(3)数据的物理结构是物理存储空间中的存储方式和存储方法
包括学生的学号、姓名、所在系、性别等信息的学生信息可用线性表这种逻辑结构组织,表中的数据元素对应一个存储记录单元,而在物理存储空间,可用一组地址连续的存储单元依次存储线性表的元素,称为顺序结构,也可用一组地址不连续的任意存储单元存储线性表的数据元素,称为链式存储
三、数据独立性
1、概念
数据独立性是指用户的应用程序与其所处理的数据是相互独立的,当数据的逻辑结构和物理结构发生变化时,应用程序保持不变的特性
2、分类
根据数据可能变化的结构,数据独立性包括数据的逻辑独立性和物理独立性
(1)物理独立性是指用户的应用程序与存储在磁盘上的数据是相互独立的。当数据的物理存储改变时,应用程序不用改变
(2)逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即数据的逻辑结构改变了,应用程序也可以不用改变
3、在数据面向应用的人工管理管理数据的方式中,数据需要由应用程序自己设计、说明和管理,程序员在编写程序时自己规定数据的存储结构、存取方法和输入方式等。当数据的存储结构发生变化时,必须由应用应用程序做相应的修改,对数据进行重新定义。应用程序与其所处理的数据是相互依赖的,数据不具有独立性
4、文件系统可以把应用程序所管理的数据组织成数据文件,数据可以以文件的形式单独存储在磁盘上,数据具有了设备独立性,利用按文件名访问、按记录进行存取的文件管理技术,应用程序可通过文件系统,对磁盘上的文件中的数据进行操作,但数据文件大的建立、存取和更新等操作都要由应用程序来完成,数据仍需要由应用程序定义和管理,因此,数据和程序之间仍缺乏数据独立性
5、遵循ANSI/SPARC三级体系结构的DBMS,为用户提供在不同层次上的抽象视图
三级体系结构将数据的结构区分为用户的局部逻辑结构、数据的整体逻辑结构和物理存储结构三个层次
用模式定义语言将有关数据结构的描述存储在DBMS的数据字典中
6、在数据库系统管理数据的方式中,应用程序通过DBMS从数据字典中得到数据库的结构信息,来存储数据库中的数据。数据库中的数据在磁盘上的存储由DBMS管理,用户不需要了解数据库的物理存储结构
比如:求数据之和和最大值
应用程序只需知道数据存储在所连接的DATA表中的NUM列,执行DBMS支持的一个数据操纵语句即可实现数据的操作
数据是由谁创建的?存储的数据是什么?有多少数据?程序都不用关心
7、由于数据库管理系统DBMS在三级模式在三级模式之间提供了二级映射
(1)概念模式/内模式间的映射定义概念模式和内模式间的对应关系,当数据库的存储结构发生改变时,也就是数据库的内模式改变了,那么只要对概念模式/内模式间的映射进行相应的修改,可使得概念模式尽可能保持不变,将内模式所带来的影响和概念模式隔离开来,当然对外模式和应用程序的影响更小,从而保证了数据的物理独立性
(2)外模式/概念模式间的映射定义用户的外模式和概念模式的对应关系,当数据的逻辑结构发生变化 。比如在数据库中增加新的关系、新的属性,改变属性的数据类型等,也就是数据库的概念模式改变了,那么只要对各个外模式/概念模式间的映射进行相应的修改,比如修改用户数据视图的定义等,可以使外模式保持不变。由于应用程序是在外模式描述的数据结构上编写的,依赖于外模式,从而应用程序不必修改,保证了数据的逻辑独立性
四、数据独立性的定义
数据独立性是指在是数据库系统中的某个层次修改模式而无需修改上一层模式的能力。
1、数据的逻辑独立性就是指修改概念模式而无需修改外模式或应用程序的能力
2、数据的物理独立性就是指修改内模式而无需修改概念模式的能力
五、小结
1、数据库管理系统的三级模式和两级映射机制,使得数据的定义和描述可以从应用程序中分离出来,实现数据与程序之间的独立性
2、同人工管理数据和文件系统管理数据相比,数据库中的数据由数据库管理系统进行统一管理与控制,数据库系统管理数据方式呈现出数据的共享性高,数据独立性高,对数据的控制能力强的优点
3、使得数据库技术广泛应用于数据管理领域