1、第2章 数据库技术基础,内容提要,数据库技术的发展 数据库系统几个重要的概念 数据库系统的结构是三级模式结构 概念模型 数据模型,本章知识点,掌握数据库技术发展的三个阶段 熟悉数据库系统的三级模式结构 掌握数据库系统的概念 掌握概念模型的基本概念和方法 掌握数据模型的基本概念和方法,2.1 数据管理技术的发展,随着计算机硬件和软件的发展,数据库技术也不断地发展。数据管理技术的发展经历了以下三个阶段:手工管理数据阶段、文件系统阶段和数据库管理系统阶段。,2.1.1 手工管理数据阶段这一阶段(20世纪50年代中期前),计算机主要用于科学计算。由于计算机技术还很落后,外部存储器只有磁带、卡片和纸带等
2、,还没有磁盘等可以直接存取的存储设备。软件只有汇编语言,还没有必要的操作系统和数据库管理方面的软件。数据处理方式是批处理。这个阶段的数据管理有如下几个特点:1、数据缺乏独立性2、数据不能共享3、数据不能保存,2.1.2 文件系统管理数据的特点及缺陷,20世纪50年代后期至60年代中期,计算机不仅用于科学计算,并开始应用在信息管理方面。随着数据量的增加,数据的存储、检索和维护等问题需要更有效的解决办法,数据结构和数据管理技术迅速发展起来。此时,已有磁盘、磁鼓等直接存取的外部存储设备。软件领域出现了操作系统和高级软件。操作系统中的文件系统是专门管理外存的数据管理软件,文件是操作系统管理的重要资源之
3、一。数据处理方式有批处理,也有联机实时处理。,一、文件系统管理阶段数据的管理特点文件系统管理阶段数据的管理主要有以下4个特点:1、数据管理由文件管理系统完成2、数据可长期保存3、文件形式多样化4、数据存储以记录为单位 二、文件管理系统在数据管理上的缺点1、数据独立性差2、数据冗余度大、数据不一致性,2.1.3 数据库系统管理阶段数据管理的特点,60年代后期,计算机应用于管理的规模更加庞大,应用也越来越广泛,数据量越来越大,数据共享的要求也越来越强;出现了内存大、运行速度快的主机和大容量的硬盘;计算机的硬件价格在下降,软件价格在上升,编写和维护计算机软件所需的成本也相对增加。因此,文件系统的数据
4、管理方法已经无法适应新形势的情况,由此引入了数据库管理系统。数据库系统克服了文件系统的缺陷,提供了对数据更高级、更有效的管理。,数据库管理系统阶段的数据管理具有以下特点:1、数据结构化2、数据共享3、减少了数据冗余4、有较高的数据独立性5、用户接口6、数据库系统提供了数据控制功能,2.1.4 数据库技术发展历程和研究方向1、数据库技术的发展历程数据库技术最初产生于20世纪60年代中期. 随着计算机管理数据的规模越来越大应用越来越广泛,数据库技术也在不断地发展和提高,先后经历了三代数据库系统(层次结构、网状结构、关系结构数据模型)。2、数据库技术的发展趋势由于数据库应用领域的不断扩大,数据库技术
5、不仅应用在数据的管理系统中,而且已经开始应用到工程项目设计、多媒体数据处理、工业自动化控制和计算机辅助设计等新的应用领域中(详情见16章新型数据库技术及发展),2.1.1数据库的基本概念1、数据(Data)2、数据库(Data Base,简称DB) 2.2.2 数据库管理及应用系统1、数据库管理系统(Data Base Manage system,简称DBMS)2、数据库应用系统,2.2 数据库系统,2.2.3 数据库系统数据库系统(Data Base system,简称DBS),它是指引入数据库技术后的计算机系统。由4部分组成: 硬件(计算机、网络、存储设备等)、软件(数据库管理系统、支持软
6、件平台如:操作系统、开发工具:实用程序、应用开发程序、设计辅助、报表书写器和事务管理器与事务监控器等)、数据库、数据库管理员和用户。,数据库系统各部分之间关系,从数据库管理系统的角度看,数据库系统通常采用三 级模式结构,它们是模式(概念模式或逻辑模式)、外 模式(子模式或用户模式)、内模式(存储模式或物理 模式)。,2.2.4 数据库系统的三级模式结构,数据库系统的三级模式,1. 三级模式结构 (1)模式(Schema):是介于内外模式之间的层次,与结构数据模型对应。是数据库系统中全局数据结构和特征的描述。它是一种抽象的描述,不涉及具体的硬件平台和软件环境,主要描述数据的概念记录类型及它们之间
7、的关系,含一些数据间的语义约束,安全性、完整性要求,概念模式是唯一的。(2)外模式(External Schema):它是用户所看到的数据视图,最接近用户。它是与某一具体应用有关的数据的逻辑结构和特征描述,仅给出每个用户局部描述,为用户所见到的概念模式的一部分。它是通过概念模式推导而出,可看作概念模式的一个子集。由于不同用户要求不同,看待数据的方式、对数据保密要求、所使用的编程语言等不同,从而产生不同的外模式。外模式不唯一。 (3)内模式(Internal Schema):是数据物理结构和存储方式的描述,即数据库的“内部视图”,由内部记录型中各个类型的值组成。它定义了数据库中各种存储记录、存储
8、记录的物理表示、存储结构与物理存取方法,如数据存储的文件结构、索引、集簇等存储方式和路径等,一个数据库只有一个内模式。它的物理性质主要表现在操作系统级和文件级上,本身并不深入到设备级上(如磁盘机磁盘操作).,2. 三种模式间的映射在数据库系统体系结构中,内模式处于最底层,它最接近于反映数据在计 算机中的实际存储形式。概念模式处于中层,它反映了设计者的数据全局逻辑要 求 。外模式处于最外层,它反映了用户对数据的实际要求。三种模式说明了作为数据库主体的数据必须按照这些模式所描述的框架结构 进行组织。为了能够实现三个模式的联系和转换,数据库管理系统在这三级模 式之间提供了两层映像,即三级模式之间的联
9、系和转换是通过二级映射来实现 的。 (1)外模式模式映像:对应同一个模式可以有任意多个外模式 。每一个外 模式数据库系统都有一个外模式模式映像,它定义了两者之间的对应关系。 当模式改变时数据库管理员对各个外模式模式映像做相应改变,可以使外模 式保持不变。应用程序是依据外模式编写的,应用程序就可不修改从而保证了 数据与程序的逻辑独立性。 (2)模式内模式映像:它定义了数据库的全局逻辑结构与存储结构之间的对 应关系。当数据库的存储结构改变时,由数据库管理员对模式内模式映像做 相应改变可以使模式保持不变,应用程序不必修改,保证了数据与程序的物理 独立性。在三级模式结构中,模式是数据库的中心与关键,它
10、独立于数据库的其他层 次,因此,涉及数据库模式结构时应首先确定数据库的逻辑结构。,数据模型是数据库技术的核心,在进行数据处理之前,必须要先建立数据模型,根据应用目的不同,模型分为概念模型和数据模型。 2.3.1概念模型的基本概念概念模型是按用户的观点对数据和信息建模,它只是描述信息的特性,而不涉及信息在计算机中的表示形式,它是现实世界到计算机世界的第一层抽象。,2.3 概念模型及其表示,1、概念模型的基本概念(1)实体(Entity)(2)属性(Attribute)(3)码(Key)(4)域(Domain)(5)实体型(Entity Type)(6)实体集(Entity Set)(7)实体间的
11、联系,2、实体间的联系类型实体之间存在的联系可归纳成三种类型。(1)一对一联系(1:1)例如,两个实体集,国家和总统,显然,一个国家只有一个总统,而一个总统只能在一个国家任职,则国家和总统之间具有一对一联系。(2)一对多联系(1:n)例如两个实体集,系和教师,一个系可以有若干名教师,一个教师只能属于一个系,则系和教师之间具有一对多联系。,2.3.2 概念模型的表示方法,概念模型中最常用的就是实体联系方法(简称E-R方法),它与传统的 数据模型有所不同。E-R方法模型是面向现实世界,而不是面向实现方法 的,它主要是用于描述现实信息世界中数据的静态特性。而不涉及数据 的处理过程。由于它简单易学,因
12、而在数据库系统应用的设计中,得到 了广泛应用。1. E-R的分析方法(见P27页)2. E-R图的表示方法(见P28页),(3)多对多联系(m:n)例如两个实体集,教师和课程,一个教师可以教若干门课,一门课又可以由若干个教师讲,则教师和课程之间具有多对多联系。,2.4 数据模型,数据模型是对客观事物及其联系的数据描述,是对数据库中数据逻辑结构的描述,是现实世界数据特征的抽象. 2.4.1 数据模型概述数据模型有层次模型、网状模型和关系模型。数据模型通常由数据结构、数据操作和完整性约束三部分组成,称之为数据模型的三要素。(见P29),2.4.2 常见的三种数据模型,层次模型和网状模型统称为非关系
13、模型,非关系模型数据库系统在20世纪70年代至80年代初非常流行,在数据库系统产品中占据主导地位,而现在已经被关系模型数据库系统取代。关系模型是目前使用最广泛的数据模型,占据了统治地位。所以,后续课程中我们主要介绍关系模型。 一、层次模型:用层次结构表示实体及实体间联系的模型称为层次模型,它是数据库中最早使用的数据模型,它的数据结构是一棵倒置有向树,树的每个结点代表一个实体集,结点间的连线表示实体间的联系。,层次数据模型的特点是: (1)有且仅有一个结点无父结点,这个结点称为根结点; (2)其它结点有且仅有一个父结点。在层次模型中,同一父结点的子女结点称为“兄弟结点”,没有子女的结点称为“叶结
14、点”。,层次模型,二、网状模型:用网状结构表示实体及实体间联系的模型称为网状模型。如图用网状模型表示学校院系的组织结构图。 网状模型的特点是: (1)允许有一个以上的结点无父结点。 (2)允许一个结点可以有多个父结点。,网状模型,网状数据模型的优点: (1)能够更为直接地描述现实世界,如一个结点可以有多个双亲。 (2)具有良好的性能,存取效率较高。网状数据模型的缺点: (1)结构比较复杂,且随着应用环境的扩大,数据库的结构变得越来越复杂,不利于最终用户的掌握。 (2)其DDL(数据定义语言),DML(数据操作语言)语言复杂,用户不易使用 (3)由于记录之间的联系是通过存取路径实现的,应用程序在
15、访问数据时必须选择适当的存取路径,因此,用户必须了解系统结构的细节,加重了编写应用程序的负担。,三、关系模型用二维表结构来表示实体及实体间联系的模型称为关系模型。在关系模型中,数据的逻辑结构是满足一定条件的二维表。一张二维表就是一个关系。描述问题的所有二维表的集合构成了一个关系模型。关系模型是数据库领域中目前最重要的一种数据模型。,2.5 数据库设计方法(P32-33) 1. 需求分析 2. 概念结构设计(E-R图) 3. 逻辑结构设计(表) 4. 数据模型的优化(确定数据依赖,规范化设计) 5. 物理结构设计(确定存储结构) 6. 数据库的运行与维护(数据库运行安全及数据完整性,扩充功能,日常数据的更新与删除等),本章介绍了数据库技术的发展经历了手工管理数据、文件管理数据和数据库技术管理三个阶段,分析了它们的优缺点。讲述了数据库、数据库管理系统、数据库应用系统和数据库系统几个重要的概念。数据库系统的结构应是三级模式结构,数据库管理系统三级模式之间的联系和转换是通过二级映像来完成的。学习了概念模型的基本概念和概念模型的表示方法,即采用E-R图的方法来表示概念模型。最后分析了数据构成的三种模型以及它们的特点。给出了规范设计一个关系数据库的方法,即6个设计步骤及内容。,2.5 小结,