3 数据库技术的产生与发展
人工管理阶段(40年代中--50年代中):✦应用需求:科学计算
✦硬件:无直接存取存储设备✦软件:无通用的操作系统
✦处理方式:批处理
✦数据管理者:应用程序,数据不保存。
✦数据面向的对象:某一应用程序。
✦数据共享程度:无共享、冗余度极大。
✦数据独立性:不独立,完全依赖于程序。
✦数据结构化:无结构。
✦数据控制能力:应用程序自己控制。
人工管理阶段应用程序与数据的对应关系
文件系统阶段(50年代末--60年代中)
✦应用需求:科学计算、数据处理
✦硬件:出现磁盘、磁鼓等
✦软件:操作系统、高级语言
✦处理方式:批处理、共享的实时处理方式
✦数据管理者:文件系统,数据长期保存。
✦数据面向的对象:某一应用程序。
✦数据共享程度:共享性差、冗余度大。
✦数据结构化:记录内有结构,整体无结构。
✦数据独立性:逻辑结构改变须修改应用程序。
✦数据控制能力:应用程序自己控制。
文件管理阶段应用程序与数据的对应关系
数据库系统阶段(60年代末以来)
✦应用需求:大规模管理
✦硬件:出现大容量磁盘、磁盘阵列
✦软件:数据库管理系统
✦处理方式:联机实时处理、分布处理和批处理
✦数据管理者:DBMS
✦数据面向的对象:整个系统
✦数据高度结构化:数据库与文件系统的根本区别
✦数据的共享性高,冗余度低,易扩充
✦数据的独立性高:物理独立性和逻辑独立性
✦数据控制能力:由DBMS统一管理和控制
数据库管理阶段应用程序与数据的对应关系
数据库系统的特点:
1、数据结构化
数据库系统:实现整体数据的结构化,这是数据库系统与文件系统的本质区别。
文件系统:文件由记录组成,文件内部有结构,文件之间无结构。
数据库系统:数据之间整体有结构,是一个有机的整体。
2、数据的共享性高,冗余度低,易扩充
数据库系统从整体角度来组织存储数据,数据不只是面向某一个应用,而是面向整个系统,因此具有很高的共享性。
共享数据带来了低冗余性,也能避免数据之间的不相容性和不一致性。
数据共享使得应用可以应需要而增加,容易扩充
3、数据独立性高
◆物理独立性:是指用户的应用程序与存储在磁盘上的数据库中的数据时相互独
立的。
数据的物理存储由DBMS负责,应用程序不必了解,只需要处理数据的逻辑结构。
这样当数据库的物理结构改变时,应用程序不用改变。
◆逻辑独立性:直指用户的应用程序与数据库的逻辑结构是相互独立的,数据库
的逻辑结构改变了,用户程序可以不予改变。
◆数据与程序的独立,把数据的定义和存储从程序中分离出去,而存取数据的方
法由DBMS提供,从而大大简化了应用程序的编制,减少了应用程序的维护
教学内容及过程旁批
一、教学过程
1、复习数据、数据库、数据库管理系统、数据库系统的基本概念和数据库系统的特点。
2、结合例子讲解数据模型的概念;几种主要数据模型的数据结构特性。
3、结合例子讲解模式的概念和三级模式两级映像。
二、教学内容
1.2 数据模型
计算机不能直接处理现实世界中的具体事物,所以人们必须事先将具体事物转换
成计算机能够处理的数据,这就是数据库的数据模型。
两类数据模型:概念模型、基本数据模型
概念模型:按照用户的观点建模,用于设计数据库
逻辑模型和物理模型(基本数据模型):用于数据库的逻辑实现和物理实现
数据模型的组成要素:
1.数据结构——系统的静态特性
数据结构不仅要描述数据库组成对象,还要描述对象之间的联系。
通常所说的层
状、网状和关系模型,就是按照此处的数据结构来进行划分的。
2.数据操作——系统的动态特性
是指对数据库中的各种对象运行执行的操作的集合,包括操作及有关的操作
规则。
数据库的操作包括查询和更新。
3.数据的完整性约束条件——一组完整性规则的集合
完整性规则是数据模型中数据及其联系所具有的约束规则,用来限定数据库
状态以及状态的变化,以保证数据的正确。
1.2.1最常用的数据模型
实体-联系方法(E-R方法),也称E-R模型。
实体(Entity):客观存在并可相互区别的事物。
属性(Attribute):实体所具有的某一特性。
联系(relationship):客观世界中各种对象或抽象概念之间的联系。
实体型:用矩形表示,矩形框内写明实体名;实体的属性用椭圆形表示,以无向边将
其与相应的实体连接起来。
联系:联系本身用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接
起来,同时在无向边旁标上联系的类型(1:1、1:n、m:n),联系的属性也要用无向边与
该联系连接。
(1)一个员工可以是多个部门的经理,而一个部门最多只能有一个经理,则该管理联系为1:N联系。
(2)一个员工可以在多个部门工作,而一个部门有多个员工,则该工作联系为M:N联系。
结构数据模型:
1、层次模型
用树形结构表示各类实体以及实体之间的联系
按树的定义层次模型有以下两个限制:
✦有且仅有一个结点无双亲——根结点
✦其它结点有且仅有一个双亲
优点:
✦简单,只需很少命令就可以操作数据库✦性能优于关系模型,不低于网状模型。
✦提供了良好的完整性支持
缺点:
✦难以描述现实世界中的复杂联系。
✦对插入和删除操作的限制多。
2、网状模型通过案例展开教学
去掉了层次模型的两个限制:
✦可以有一个以上的结点无双亲
✦至少有一个结点有多于一个的双亲
优点:
✦能更为直接地描述现实世界
✦具有良好的性能,存取效率较高。
缺点:
✦结构比较复杂
✦数据独立性差。
3、关系模型
层状模型和网状模型在实际当中几乎不再使用,而几乎所有的DBMS都支持关系模型,即使不支持的,也加上了关系模型的接口。
逻辑结构是一张二维表,它由行和列组成。
1.3 数据库系统的体系结构
数据库的三级模式结构
为了保障数据与程序之间的独立性,使用户能以简单的逻辑结构操作数据而无需考虑数据的物理结构,简化了应用程序的编制和程序员的负担,增强系统的可靠性。
通常DBMS将数据库的体系结构分为三级模式:外模式、模式和内模式。
◆型(Type):对某一类数据的结构和属性的说明。
◆值(Value):是型的一个具体赋值。
例如:学生记录
记录型:(学号,姓名,性别,系别,年龄,籍贯)
该记录型的一个记录值:
(900201,李明,男,计算机,22,江苏)
◆模式(Schema):数据中全体数据逻辑结构和特征的描述。
模式只涉及型,不涉及具体的值。
例如:学生选课数据库,型包括学生记录、课程记录和学生选课记录几个关系的模式,是相对稳定的,而里面的数据是动态的,2010年某一刻的数据和2009年某一刻的数据是不同的两个值。
◆模式(逻辑模式)
✦是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,综合了所有用户的需求。
✦一个数据库只有一个模式。
✦模式是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关。
学生数据库模式结构
◆外模式(子模式或用户模式)
✦数据库用户使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
✦外模式通常是模式的子集,一个数据库可以有多个外模式
✦同一外模式可以为某一用户的多个应用系统所使用。
✦外模式是保证数据库安全性的一个有力措施
学生数据库外模式结构
◆内模式(存储模式)
✦数据物理结构和存储方式的描述,是数据在数据库内部的存储方式
✦一个数据库只能有一个内模式
1.3.3 数据库的二级映象功能与数据独立性
◆三级模式是对数据库中数据的三个抽象级别,两级映象是在DBMS内部实现
这三个抽象层次的联系和转换。
✦外模式/模式模式/内模式
外模式/模式映象
◆定义了外模式与模式之间的对应关系,每一个外模式都对应一个外模式/模
式映象。
◆保证了数据的逻辑独立性
模式/内模式映象
◆定义了数据全局逻辑结构与存储结构之间的对应关系,数据库中模式/内模
式映象是唯一的。
◆保证了数据的物理独立性
作业:
◆什么是数据库?什么是数据库管理系统?什么是数据库系统?
◆计算机数据管理经历了哪几个阶段?
◆数据库系统的特点有哪些?
◆数据库管理系统的主要功能有哪些?
◆试述概念模型的作用?
◆三级模式和二级映象各指什么?。