数据库技术基础chp1课件_第1页
数据库技术基础chp1课件_第2页
数据库技术基础chp1课件_第3页
数据库技术基础chp1课件_第4页
数据库技术基础chp1课件_第5页
已阅读5页,还剩163页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库技术基础第1章数据库系统概论数据库技术基础第1章数据库系统概论第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.1学习目标

学完本章后,读者应具备以下能力:理解数据库系统的概念、特点和结构。了解数据库管理系统的发展和功能。1.1学习目标第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.2数据库系统的定义数据库系统的组成4个基本概念

1.2数据库系统的定义数据库系统的组成1.2数据库系统的定义(续)数据库系统由三个部分组成:数据库、数据库管理系统、数据库应用。数据库DBMS应用应用应用1.2数据库系统的定义(续)数据库系统由三个部分组成:数1.2数据库系统的定义(续)数据库数据库管理系统数据库应用数据库用户四个基本概念1.2数据库系统的定义(续)数据库四个基本概念1.2数据库系统的定义(续)数据库的用途数据库用于存储数据,数据分为用户数据和系统数据。举例说明:

在“学生”数据库中,每个学生的信息是用户数据。描述结构(学生信息由哪些数据项构成,每个数据项的数据类型等)的数据叫做系统数据,系统数据又叫做元数据。1.数据库1.2数据库系统的定义(续)数据库的用途1.数据库1.2数据库系统的定义(续)在计算机系统中,数据库表现为一个或多个操作系统的文件。对大型数据库,这些文件占用的存储空间非常可观,可以达到TB级,而对小型数据库,如个人通讯录,可能只占用几个KB。特别要注意的是,数据库并不是简单的文件的叠加,而是由数据库管理系统作为一个整体进行管理,有着复杂的存储结构。1.数据库(续)1.2数据库系统的定义(续)在计算机系统中,数据库表现为一1.2数据库系统的定义(续)什么是DBMS数据库管理系统是一类重要的复杂的系统软件,由若干程序组成,主要包括数据库引擎、各种管理程序和开发工具等。DBMS的功能数据库管理系统完成对数据库的一切操作,同时提供面向应用的接口,供应用程序调用。DBMS和数据库由于数据库和数据库管理系统之间的联系非常紧密,我们可以把它们看成一个密不可分的整体,简称数据库。2.数据库管理系统(DBMS)1.2数据库系统的定义(续)什么是DBMS2.数据库管理1.2数据库系统的定义(续)数据库应用是数据库系统中最活跃的部分,一般由企业根据自身的业务需要,由软件工程师开发。例如,银行业务管理系统、火车票订票系统等。数据库应用通常由开发小组开发。开发小组成员一般包括:项目管理人员熟悉业务处理过程的业务人员熟悉数据库系统开发的软件工程师数据库系统管理员3.数据库应用1.2数据库系统的定义(续)数据库应用是数据库系统中最活跃1.2数据库系统的定义(续)数据库应用的开发过程一般包括:需求分析功能:准确了解与分析用户需求(包括数据与处理)。地位:需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。概念结构设计功能:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。地位:是整个数据库设计的关键。逻辑结构设计功能:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。3.数据库应用(续)1.2数据库系统的定义(续)数据库应用的开发过程一般包括:1.2数据库系统的定义(续)物理结构设计功能:数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。数据库实施功能:设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制和调试应用程序,组织数据入库,并进行试运行。数据库运行和维护功能:在数据库应用系统正式运行过程中必须不断地对其进行评价、调整与修改。3.数据库应用(续)1.2数据库系统的定义(续)物理结构设计3.数据库应用(1.2数据库系统的定义(续)数据库管理员系统分析员数据库设计人员应用程序员最终用户4.数据库用户1.2数据库系统的定义(续)数据库管理员4.数据库用户1.2数据库系统的定义(续)数据库管理员(DatabaseAdministrator,DBA)负责数据库系统的全面管理工作,包括:决定数据库中的信息内容和结构。决定数据库的存储结构和存取策略。定义数据的安全性要求和完整性约束条件。监控数据库的使用和运行。进行数据库的改进和重构。4.数据库用户(续)1.2数据库系统的定义(续)数据库管理员(Database1.2数据库系统的定义(续)系统分析员的任务应用系统的需求分析和规范说明。确定系统的硬件与软件配置。参与数据库系统的概要设计。数据库设计人员的任务数据库中数据的确定。数据库各级模式的设计。4.数据库用户(续)1.2数据库系统的定义(续)系统分析员的任务4.数据库用1.2数据库系统的定义(续)应用程序员的主要任务设计和编写应用系统的程序模块系统调试系统安装4.数据库用户(续)1.2数据库系统的定义(续)应用程序员的主要任务4.数据1.2数据库系统的定义(续)最终用户的任务通过应用系统使用数据库。最终用户是机构的工作人员,例如,银行的职员、航空公司的售票人员等。4.数据库用户(续)1.2数据库系统的定义(续)最终用户的任务4.数据库用户第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.3数据库系统的特点数据管理的三个发展阶段:人工管理特点:数据由人管理。例如,可以把数据制成穿孔卡片,由读卡机将数据读入计算机,由特定的程序进行处理。文件系统特点:人们把数据存放在文件中,文件系统提供对文件内容的读写操作,然后采用某种编程语言编写应用程序。数据库系统特点:数据被存放在数据库中,数据库管理系统负责操纵数据库中的数据,采用许多更先进的开发工具开发应用系统,开发工作效率大大提高。1.3数据库系统的特点数据管理的三个发展阶段:1.3数据库系统的特点(续)假设一个学生的信息包括学号、姓名、性别、年龄专业和奖励,部分学生的情况如表1.1所示。学号姓名性别年龄专业奖励20050001史玉明女20计算机2005校奖学金,2006国家奖学金20050100李明男21机械2006校优秀学生20050234张翔男21化工………………………………表1.1学生一览表文件系统和数据库系统的差异1.3数据库系统的特点(续)假设一个学生的信息包括1.3数据库系统的特点(续)学号姓名性别年龄专业位置长度20050001史玉明女20计算机03020050100李明男21机械301520050234张翔男21化工450……………………………………奖励2005校奖学金,2006国家奖学金2006校优秀学生表1.2学生基本信息文件和奖励文件的结构和内容

1.采用文件系统实现学籍管理1.3数据库系统的特点(续)学号姓名性别年龄专业位置长度1.3数据库系统的特点(续)文件系统管理的文件是流式文件,或者说,文件是无结构的,只是一些字节流。确定了存储学生数据的方式后,需要编写程序来实现数据的录入功能和查询功能。录入功能的基本过程包括从键盘读入学生信息,把奖励写到奖励文件,把基本信息写到学生基本信息文件。查询功能采用顺序查找方法。采用文件系统实现学籍管理的基本特点1.3数据库系统的特点(续)文件系统管理的文件是流式文件1.3数据库系统的特点(续)首先要在数据库中建立两个表STUDENT_INFO:存放学生的基本信息REWARD_PUNISHMENT:存放学生的奖励记录,可以向数据库管理系统发布两条命令来实现。CREATETABLESTUDENT_INFO( SID CHAR(8),SNAMECHAR(10),GENDERCHAR(2),AGE SMALLINT,MAJORCHAR(20));CREATETABLEREWARD_PUNISHMENT( SID CHAR(8),DETAILSVARCHAR(2000));图1.2学生基本信息和奖励的结构

2.采用数据库系统实现学籍管理1.3数据库系统的特点(续)首先要在数据库中建立两个表C1.3数据库系统的特点(续)向数据库管理系统提交下面的两条插入命令就可以把基本信息和奖励记录保存到表STUDENT_INFO和REWARD_PUNISHMENT中,完成录入功能。插入学生的基本信息INSERTINTOSTUDENT_INFO(SID,SNAME,GENDER,AGE,MAJOR)VALUES('20050001','史玉明','女',20,'计算机')--插入学生的基本信息插入学生获得的奖励INSERTINTOREWARD_PUNISHMENT(SID,DETAILS)VALUES('20050001','2005校奖学金,2006国家奖学金')--查询功能可以用一条检索语句实现:SELECTA.SID,SNAME,GENDER,AGE,MAJOR,DETAILSFROMSTUDENT_INFOALEFTJOINREWARD_PUNISHMENTBONA.SID=B.SIDWHEREA.SID='20050001'2.采用数据库系统实现学籍管理1.3数据库系统的特点(续)向数据库管理系统提交下面的两数据库系统的特点(1)数据结构化(2)数据的共享性高,冗余度低,易扩充(3)数据独立性高(4)数据由DBMS统一管理和控制3.数据库系统的特点数据库系统的特点(1)数据结构化3.数据库系统的特点1.3数据库系统的特点(续)整体数据的结构化是数据库的主要特征之一整体结构化不再仅仅针对某一个应用,而是面向全组织。不仅数据内部结构化,整体也是结构化的,数据之间具有联系。数据库中实现的是数据的真正结构化数据的结构用数据模型描述,无须程序定义和解释。数据可以变长。数据的最小存取单位是数据项。(1)数据结构比1.3数据库系统的特点(续)整体数据的结构化是数据库的主要1.3数据库系统的特点(续)数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。数据共享的好处减少数据冗余,节约存储空间。避免数据之间的不相容性与不一致性。使系统易于扩充。(2)数据的共享性高,冗余度低,易扩充1.3数据库系统的特点(续)(2)数据的共享性高,冗余度1.3数据库系统的特点(续)物理独立性指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变时,应用程序不用改变。逻辑独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变时,用户程序也可以不变。数据独立性是由DBMS的二级映像功能来保证的(3)数据独立性高1.3数据库系统的特点(续)物理独立性(3)数据独立性高1.3数据库系统的特点(续)DBMS提供的数据控制功能数据的安全性(Security)保护保护数据,以防止不合法的使用造成的数据的泄密和破坏。数据的完整性(Integrity)检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。并发(Concurrency)控制对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态。(4)数据由DBMS统一管理和控制1.3数据库系统的特点(续)DBMS提供的数据控制功能(4第1章数据库系统论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统论1.1学习目标1.4数据库系统的结构

1.4.1体系结构

1.4.2三级模式

1.4数据库系统的结构1.4.1体系结构1.4.1体系结构1.集中式数据库系统

2.客户机/服务器数据库系统

3.并行数据库系统

4.分布式数据库系统

1.4.1体系结构1.集中式数据库系统1.4.1体系结构(续)集中式数据库系统的DBMS、数据库和应用程序都在一台计算机上。在小型机和大型机上的集中式数据库系统一般是多用户系统,即多个用户通过各自的终端运行不同的应用系统,共享数据库。在微型计算机上的数据库系统一般是单用户的。1.集中式数据库系统1.4.1体系结构(续)集中式数据库系统的DBMS、数据库1.4.1体系结构(续)DBMS、数据库驻留在服务器上,而应用程序放置在客户机上(微型计算机或工作站),客户机和服务器通过网络进行通信。客户机负责业务数据处理流程和应用程序的界面,当要存取数据库中的数据时就向服务器发出请求,服务器接受客户机的请求后进行处理,并将客户要求的数据返回客户机。随着internet技术的应用,客户/服务器两层结构已经发展为三层或多层结构。三层结构一般是指浏览器/应用服务器/数据库服务器结构。用户界面采用统一的浏览器方式,应用服务器上安装应用系统或应用模块,数据库服务器上安装DBMS和数据库。二层或三层结构把数据库系统的功能进行合理的分配,减轻数据库服务器的负担,从而使服务器有更多的能力完成事务处理和数据访问控制,支持更多的用户,提高系统的性能。2.客户/服务器数据库系统1.4.1体系结构(续)DBMS、数据库驻留在服务器上,1.4.1体系结构(续)并行数据库系统是在并行机上运计算机行的具有并行处理能力的数据库系统,是数据库技术与并行计算技术相结合的产物。并行计算机系统有共享内存型、共享磁盘型、非共享型以及混合型。并行计算技术利用多处理机并行处理产生的规模效益来提高系统的整体性能,为数据库系统提供了一个良好的硬件平台。并行数据库系统发挥了多处理机的优势,采用先进的并行查询技术和并行数据分布与管理技术,具有高性能、高可用性、高可扩展性等优点。3.并行数据库系统1.4.1体系结构(续)并行数据库系统是在并行机上运计算机1.4.1体系结构(续)分布式数据库由一组数据组成,这组数据物理上分布在计算机网络的不同结点上,逻辑上却属于同一个系统。网络中的每个结点具有独立处理的能力(称为场地自治),可以执行局部应用,这时只访问本地数据。也可以执行全局应用,此时,通过网络通信子系统访问多个结点上的数据。分布式数据库适应了企业部门分布的组织结构,可以降低费用,提高系统的可靠性和可用性,具有良好的可扩展性。

4.分布式数据库系统1.4.1体系结构(续)分布式数据库由一组数据组成,这组数1.4数据库系统的结构1.4.1体系结构

1.4.2三级模式

1.4数据库系统的结构1.4.1体系结构1.4.2三级模式模式(Schema)

外模式(ExternalSchema)内模式(InternalSchema)1.4.2三级模式模式(Schema)1.4.2三级模式(续)模式(也称逻辑模式)在数据库系统中要描述数据的结构,数据面向所有应用所展现的结构叫做模式。例如,为了满足学籍管理应用和新应用,学生基本信息和奖励的结构如图1.4与图1.2相比,多了一个籍贯数据项,因此,包含了两个应用要使用的全部数据项。CREATETABLESTUDENT_INFO_ALL( SID CHAR(8),NAME CHAR(10),GENDERCHAR(2),AGE SMALLINT,MAJORCHAR(20),NATIVECHAR(10));CREATETABLEREWARD_PUNISHMENT( SID CHAR(8),DETAILSVARCHAR(2000));图1.4学生基本信息和奖励模式

1.模式1.4.2三级模式(续)模式(也称逻辑模式)CREATE1.4.2三级模式(续)外模式(也称子模式或用户模式)数据面向某一应用所展现的模式叫做外模式。

实际上是从模式中挑选出与应用密切相关的数据项。数据库管理系统中提供了描述外模式的命令。由于学籍管理只使用了学生基本信息中的部分数据,需要为它建立一个外模式,如图1.5。CREATEVIEWSTUDENT_INFOASSELECTSID,NAME,GENDER,AGE,MAJORFROMSTUDENT_INFO_ALL;图1.5供学籍管理使用的学生基本信息外模式

2.外模式(ExternalSchema)1.4.2三级模式(续)外模式(也称子模式或用户模式)CR内模式(也称存储模式)是数据库所有数据的内部表示或者说是低层的描述;

内模式用来定义数据的存储方式和物理结构;

记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定一个数据库只有一个内模式数据库管理系统也要提供内模式描述语言(内模式DDL)来定义和描述内模式。1.4.2三级模式(续)3.内模式(InternalSchema)内模式(也称存储模式)1.4.2三级模式(续)3.内模式1.4.2三级模式(续)图1.3数据库系统的三级模式结构1.4.2三级模式(续)图1.3数据库系统的三级模式结1.4.2三级模式(续)数据库系统的三级模式是对数据的三个抽象级别。它把数据的具体组织留给DBMS去做,用户只要抽象地处理数据,而不用关心这些数据在计算机中如何表示和存储,大大减轻了程序员在数据管理方面的负担。采用三级模式,可以很方便地实现数据共享和数据独立性。采用三级模式的优点1.4.2三级模式(续)数据库系统的三级模式是对数第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.5数据库管理系统

1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.1发展过程层次型数据库管理系统网状数据库管理系统关系型数据库管理系统面向对象型数据库管理系统XML数据库管理系统1.5.1发展过程层次型数据库管理系统1.5.1发展过程(续)层次模型是数据库系统中最早出现的数据模型。层次数据库系统的典型代表是IBM公司的IMS(InformationManagementSystem)数据库管理系统。层次模型用树形结构来表示各类实体以及实体间的联系。1.层次型数据库管理系统1.5.1发展过程(续)层次模型是数据库系统中最早出现的数1.5.1发展过程(续)网状数据库系统采用网状模型作为数据的组织方式典型代表是DBTG系统:亦称CODASYL系统20世纪70年代由DBTG提出的一个系统方案提出了数据库系统的基本概念、方法和技术实际系统CullinetSoftware公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE2.网状数据库管理系统1.5.1发展过程(续)网状数据库系统采用网状模型作为数据1.5.1发展过程(续)关系数据库系统采用关系模型作为数据的组织方式1970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型。计算机厂商新推出的数据库管理系统几乎都支持关系模型。典型代表有:SystemR、Oracle、SQLServer等。3.关系型数据库管理系统1.5.1发展过程(续)关系数据库系统采用关系模型作为数据1.5.1发展过程(续)面向对象数据库系统(Object-OrientedDatabaseSystem,OODBS)是数据库技术与面向对象程序设计方法相结合的产物。典型代表:法国O2Technology公司的O2美国ItascaSystem公司的Itasca等4.面向对象型数据库管理系统1.5.1发展过程(续)面向对象数据库系统(Object-1.5.1发展过程(续)为了应对存储和查询XML文档的需要,数据库界研究了XML文档的存储机制、查询优化和索引技术,把XML文档以自然的方式存储在基于树状模型的层次结构中,从而使得数据库对XML文档的处理能力越来越强。2006年发布的IBMDB2Viper实现了同时对关系数据和XML文档的管理。5.XML数据库管理系统1.5.1发展过程(续)为了应对存储和查询XML文档的需要1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.2基本功能数据定义功能DBMS提供数据定义语言(DataDefinitionLanguage,、DDL),用户通过它可以方便地对数据库中的数据对象进行定义。数据操纵功能DBMS提供数据操纵语言(DataManipulationLanguage,、DML),用户可以使用DML操纵数据,以实现对数据库的基本操作:查询、插入、删除和更新。数据库的运行管理数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。数据库的建立和维护功能它包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织、重构造功能和性能监视、分析功能等。这些功能通常是由一些实用程序完成的。1.5.2基本功能数据定义功能1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.3组成模块DBMS由两大部分组成查询处理器查询处理器包含数据定义语言(DDL)编译器、数据操纵语言(DML)编译器、嵌入型DML的预编译器以及查询优化等核心程序。存储管理器存储管理器包含授权和安全性控制、完整性检查管理器、事务管理器、文件管理器和缓冲区管理器。

1.5.3组成模块DBMS由两大部分组成1.5.3组成模块(续)数据定义方面的程序模块数据操纵方面的程序模块数据库运行管理方面的程序模块数据库组织、存储和管理方面的程序模块数据库建立、维护和其他方面的程序模块DBMS的组成模块:1.5.3组成模块(续)数据定义方面的程序模块DBMS1.5.3组成模块(续)主要包括:数据库逻辑结构的定义模块,在关系数据库管理系统(RDBMS)中就是创建数据库、创建表、创建视图、创建索引等定义模块。安全性定义,如授权定义及处理模块。完整性定义,如主关码字、外关码字、其他完整性约束定义及处理模块。DDL程序模块的功能:接收相应的定义。进行语法、语义检查。把它们翻译为内部格式存储在数据字典中。创建数据库的模块还根据定义,建立数据库的框架(即形成一个空库),等待装入数据。1.数据定义方面的程序模块1.5.3组成模块(续)主要包括:1.数据定义方面的程序1.5.3组成模块(续)主要包括:查询(Select语句)处理程序模块数据更新(增加、删除、修改)程序模块交互式查询程序模块嵌入式查询程序模块程序模块的功能:对用户的数据操纵请求进行语法分析、语义检查。生成某种内部表示,通常是语法树。对于查询语句,由查询优化器进行优化,如根据一定的等价变换规则把语法树转换成标准形式。对于语法树中的每一个操作,根据存取路径、数据的存储分布、数据的聚簇等信息来选择具体的执行算法。生成查询计划,提交查询执行模块执行,完成对数据库的存取操作。2.数据操纵方面的程序模块1.5.3组成模块(续)主要包括:2.数据操纵方面的程1.5.3组成模块(续)程序模块的功能:负责初始化DBMS。完成建立DBMS的系统缓冲区、系统工作区、打开数据字典等操作。进行安全性控制。完整性检查、并发控制、事务管理、运行日志管理等。在数据库运行过程中监视对数据库的所有操作,控制、管理数据库资源,处理多用户的并发操作等。目标:一方面保证用户事务的正常运行,一方面保证数据库的安全性和完整性。3.数据库运行管理方面的程序模块1.5.3组成模块(续)程序模块的功能:3.数据库运行1.5.3组成模块(续)

程序模块的组成:文件读写与维护程序存取路径(如索引)管理和维护程序缓冲区管理程序(包括缓冲区读、写、淘汰模块)等程序模块的功能:负责维护数据库的数据和存取路径,提供有效的存取方法。4.数据库组织、存储和管理方面的程序模块1.5.3组成模块(续)程序模块的组成:4.数据库组织1.5.3组成模块(续)

程序模块的组成:数据库初始装入程序转储程序恢复程序数据库重构程序数据转换程序通信程序等5.数据库建立、维护和其他方面的程序模块1.5.3组成模块(续)程序模块的组成:5.数据库建立1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块

1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.4层次结构数据存储层操作系统数据库数据存取层语言翻译处理层应用层1.5.4层次结构数据存储层操作系统数据库数据存1.5.4层次结构(续)处理的对象是各种各样的数据库应用,可以用开发工具开发或者用宿主语言编写。应用程序要利用DBMS提供的接口来完成事务处理和查询处理。1.应用层1.5.4层次结构(续)处理的对象是各种各样的数据库应用,1.5.4层次结构(续)处理的对象是数据库语言,如SQL。功能是对数据库语言的各类语句进行语法分析、视图转换、授权检查、完整性检查、查询优化等。向上提供的接口是关系、视图,它们是元组的集合。2.语言翻译处理层1.5.4层次结构(续)处理的对象是数据库语言,如SQL1.5.4层次结构(续)该层处理的对象是单个元组。完成扫描(如表扫描)、排序、查找、插入、更新、删除、封锁等基本操作,完成存取路径维护、并发控制、事务管理、安全控制等工作。向上提供的接口是单记录操作。3.数据存取层1.5.4层次结构(续)该层处理的对象是单个元组。3.1.5.4层次结构(续)该层处理的对象是数据页和系统缓冲区。执行文件的逻辑打开、关闭,读写数据页,完成缓冲区管理、内外存交换、外存的数据管理等功能。4.数据存储层1.5.4层次结构(续)该层处理的对象是数据页和系统缓冲1.5.4层次结构(续)操作系统是DBMS的基础。处理的对象是数据文件的物理块。执行物理文件的读写操作,保证DBMS对数据逻辑上的读写真实地映射到物理文件上。操作系统提供的存取原语和基本的存取方法通常作为和DBMS存储层的接口。5.操作系统1.5.4层次结构(续)操作系统是DBMS的基础。5.1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构

1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.5主要产品介绍国外OracleIBMDB2MicrosoftSQLServerMySQLMicosoftAccess国内OpenbaseKingBaseESDMOSCAR1.5.5主要产品介绍国外1.5.5主要产品介绍(续)Oracle公司是全球最大的数据库产品提供商,成立于1977年。Oracle的产品覆盖面广,可以运行于UNIX、Linux、Windows等操作系统之上。比较流行的版本有Oracle7、Oracle8i、Oracle9i、Oracle10i、Oracle10g、Oracle11g。Oracle9i是一个用于Internet的新一代智能化的、协作各种应用的软件基础架构,具有Internet上的高伸缩性能、智能化、高可靠性。Oracle10g和Oracle11g是为网格计算而设计的数据库。2007年7月11日发布的Oracle11g数据库在性能、可升级性、可管理性以及可诊断性上有了提升,引入了新的数据压缩技术,用户的存储空间可以减少三分之二,在非结构化数据的存储速度上,新版也比旧版大大加快。此外,Oracle11g数据库还增加了一些有关数据分区存储的功能。1.Oracle1.5.5主要产品介绍(续)Oracle公司是全球最大的数1.5.5主要产品介绍(续)IBM在20世纪70年代进行了关系数据库系统SystemR项目,取得了一系列技术上的进步。1980年,最初的SystemR项目首次实现的关系技术被集成到System/38服务器的数据库。DB2(正式名称是DATABASE2)于1983年诞生于MVS上。如今,DB2系列数据库可运行于UNIX、Linux与Windows平台以及IBM的iSeries(OS/400操作系统)和zSeries(OS/390、z/OS、z/VM和Linux)服务器之上。DB2也支持电子商务和网格计算。2.IBMDB21.5.5主要产品介绍(续)IBM在20世纪70年代进行了1.5.5主要产品介绍(续)Microsoft于1988年进入数据库管理系统供应商行列,最初采取了与另外一个数据库管理系统供应商Sybase合作的方式,1995年6月发布了独立开发的SQLServer6.0,1998年11月发布了SQLServer7.0Microsoft编写了其全部代码;2000年12月发布了SQLServer2000。目前最新的版本是SQLServer2005。3.MicrosoftSQLServer1.5.5主要产品介绍(续)Microsoft于1988年1.5.5主要产品介绍(续)MySQL是一个广受Linux社区人们喜爱的半商业的数据库。MySQL可以运行在大多数的Linux平台(i386,Sparc等)以及少许非Linux甚至非UNIX平台上。MySQL是一个多用户、多线程的SQL数据库,是一个客户/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。MySQL的普及很大程度上源于它的宽松,除了略显不寻常的许可费用。MySQL的价格随平台和安装方式的不同而变化。MySQL的Windows版本(NT/9x)在任何情况下都不免费;而任何UNIX变种(包括Linux)的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的,第三方安装则必须付许可费。MySQL5系列数据库是MySQL的最新版本。比较流行的发行版是mysql-5.0.18。4.MySQL1.5.5主要产品介绍(续)MySQL是一个广受Linux1.5.5主要产品介绍(续)Access是一种桌面型数据库管理系统。由于价格便宜,功能强大,在小型应用中受到了人们的喜爱。5.MicosoftAccess1.5.5主要产品介绍(续)Access是一种桌面型数据库1.5.5主要产品介绍(续)OpenBase是东软集团中间件公司推出的我国第一个具有自主知识产权的商品化数据库管理系统。10多年来,OpenBase已逐渐形成了以大型通用关系型数据库管理系统为基础的产品系列,包括:OpenBase多媒体数据库管理系统、OpenBaseWeb应用服务器、OpenBaseMini嵌入式数据库系统、OpenBaseSecure安全数据库系统等。6.OpenBase1.5.5主要产品介绍(续)OpenBase是东软集团中间1.5.5主要产品介绍(续)KingbaseES是北京人大金仓信息技术有限公司经过多年努力,自主研制开发的具有自主知识产权的通用关系型数据库管理系统。KingbaseES是一个大型通用跨平台系统,可以安装和运行于Windows、Linux、Solaris以及AIX等多种操作系统平台下。KingbaseES数据库系统在各种操作系统平台上都易于安装,设置简单。KingbaseES数据库分为三种基本版本:企业版、标准版、工作组版。用户可以根据自己的实际需要选择相应的版本。7.KingBaseES1.5.5主要产品介绍(续)KingbaseES是北京人大1.5.5主要产品介绍(续)达梦数据库DM是由武汉华中科技大学达梦数据库有限公司开发的具有完全自主知识产权的国产大型数据库管理系统,达梦公司拥有DM的全部源代码和完全的自主版权。DM支持多个平台之间的互联互访、高效的并发控制机制、有效的查询优化策略、灵活的系统配置、支持各种故障恢复并提供多种备份和还原方式,具有高可靠性、支持多种多媒体数据类型、提供全文检索功能、用户文档齐全。8.DM1.5.5主要产品介绍(续)达梦数据库DM是由武汉华中科技1.5.5主要产品介绍(续)神舟OSCAR数据库是拥有完全自主知识产权的企业级大型、通用对象关系型数据库管理系统。它是北京神舟航天软件技术有限公司集多年的数据库研发经验,在国家科技部和中国航天科技集团的大力支持下研制成功的,是“十五”“863”重大软件专项“大型通用数据库管理系统及其应用”的研制成果,是一个在功能、性能、实用性、稳定性、安全性以及可扩展性等方面能够满足电子政务、电子商务、企业信息化以及国防工业等敏感部门信息化建设需求的大型通用数据库产品。神舟OSCAR数据库系统性能稳定、功能完善,可广泛应用于各类企事业单位、政府机关,尤其是国防、军工等事关国家政治、军事、经济安全的各要害单位的信息化建设。9.OSCAR1.5.5主要产品介绍(续)神舟OSCAR数据库是拥有完全第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.6小结数据库系统概述数据库系统的定义数据库系统的特点数据库系统的结构体系结构三级模式结构1.6小结数据库系统概述1.6小结(续)数据库管理系统发展过程基本功能组成模块层次结构主要产品介绍1.6小结(续)数据库管理系统

下课了。。。追求休息一会儿。。。下课了。。。追求休息一会儿。。。数据库技术基础第1章数据库系统概论数据库技术基础第1章数据库系统概论第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.1学习目标

学完本章后,读者应具备以下能力:理解数据库系统的概念、特点和结构。了解数据库管理系统的发展和功能。1.1学习目标第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.2数据库系统的定义数据库系统的组成4个基本概念

1.2数据库系统的定义数据库系统的组成1.2数据库系统的定义(续)数据库系统由三个部分组成:数据库、数据库管理系统、数据库应用。数据库DBMS应用应用应用1.2数据库系统的定义(续)数据库系统由三个部分组成:数1.2数据库系统的定义(续)数据库数据库管理系统数据库应用数据库用户四个基本概念1.2数据库系统的定义(续)数据库四个基本概念1.2数据库系统的定义(续)数据库的用途数据库用于存储数据,数据分为用户数据和系统数据。举例说明:

在“学生”数据库中,每个学生的信息是用户数据。描述结构(学生信息由哪些数据项构成,每个数据项的数据类型等)的数据叫做系统数据,系统数据又叫做元数据。1.数据库1.2数据库系统的定义(续)数据库的用途1.数据库1.2数据库系统的定义(续)在计算机系统中,数据库表现为一个或多个操作系统的文件。对大型数据库,这些文件占用的存储空间非常可观,可以达到TB级,而对小型数据库,如个人通讯录,可能只占用几个KB。特别要注意的是,数据库并不是简单的文件的叠加,而是由数据库管理系统作为一个整体进行管理,有着复杂的存储结构。1.数据库(续)1.2数据库系统的定义(续)在计算机系统中,数据库表现为一1.2数据库系统的定义(续)什么是DBMS数据库管理系统是一类重要的复杂的系统软件,由若干程序组成,主要包括数据库引擎、各种管理程序和开发工具等。DBMS的功能数据库管理系统完成对数据库的一切操作,同时提供面向应用的接口,供应用程序调用。DBMS和数据库由于数据库和数据库管理系统之间的联系非常紧密,我们可以把它们看成一个密不可分的整体,简称数据库。2.数据库管理系统(DBMS)1.2数据库系统的定义(续)什么是DBMS2.数据库管理1.2数据库系统的定义(续)数据库应用是数据库系统中最活跃的部分,一般由企业根据自身的业务需要,由软件工程师开发。例如,银行业务管理系统、火车票订票系统等。数据库应用通常由开发小组开发。开发小组成员一般包括:项目管理人员熟悉业务处理过程的业务人员熟悉数据库系统开发的软件工程师数据库系统管理员3.数据库应用1.2数据库系统的定义(续)数据库应用是数据库系统中最活跃1.2数据库系统的定义(续)数据库应用的开发过程一般包括:需求分析功能:准确了解与分析用户需求(包括数据与处理)。地位:需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。概念结构设计功能:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。地位:是整个数据库设计的关键。逻辑结构设计功能:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。3.数据库应用(续)1.2数据库系统的定义(续)数据库应用的开发过程一般包括:1.2数据库系统的定义(续)物理结构设计功能:数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。数据库实施功能:设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制和调试应用程序,组织数据入库,并进行试运行。数据库运行和维护功能:在数据库应用系统正式运行过程中必须不断地对其进行评价、调整与修改。3.数据库应用(续)1.2数据库系统的定义(续)物理结构设计3.数据库应用(1.2数据库系统的定义(续)数据库管理员系统分析员数据库设计人员应用程序员最终用户4.数据库用户1.2数据库系统的定义(续)数据库管理员4.数据库用户1.2数据库系统的定义(续)数据库管理员(DatabaseAdministrator,DBA)负责数据库系统的全面管理工作,包括:决定数据库中的信息内容和结构。决定数据库的存储结构和存取策略。定义数据的安全性要求和完整性约束条件。监控数据库的使用和运行。进行数据库的改进和重构。4.数据库用户(续)1.2数据库系统的定义(续)数据库管理员(Database1.2数据库系统的定义(续)系统分析员的任务应用系统的需求分析和规范说明。确定系统的硬件与软件配置。参与数据库系统的概要设计。数据库设计人员的任务数据库中数据的确定。数据库各级模式的设计。4.数据库用户(续)1.2数据库系统的定义(续)系统分析员的任务4.数据库用1.2数据库系统的定义(续)应用程序员的主要任务设计和编写应用系统的程序模块系统调试系统安装4.数据库用户(续)1.2数据库系统的定义(续)应用程序员的主要任务4.数据1.2数据库系统的定义(续)最终用户的任务通过应用系统使用数据库。最终用户是机构的工作人员,例如,银行的职员、航空公司的售票人员等。4.数据库用户(续)1.2数据库系统的定义(续)最终用户的任务4.数据库用户第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.3数据库系统的特点数据管理的三个发展阶段:人工管理特点:数据由人管理。例如,可以把数据制成穿孔卡片,由读卡机将数据读入计算机,由特定的程序进行处理。文件系统特点:人们把数据存放在文件中,文件系统提供对文件内容的读写操作,然后采用某种编程语言编写应用程序。数据库系统特点:数据被存放在数据库中,数据库管理系统负责操纵数据库中的数据,采用许多更先进的开发工具开发应用系统,开发工作效率大大提高。1.3数据库系统的特点数据管理的三个发展阶段:1.3数据库系统的特点(续)假设一个学生的信息包括学号、姓名、性别、年龄专业和奖励,部分学生的情况如表1.1所示。学号姓名性别年龄专业奖励20050001史玉明女20计算机2005校奖学金,2006国家奖学金20050100李明男21机械2006校优秀学生20050234张翔男21化工………………………………表1.1学生一览表文件系统和数据库系统的差异1.3数据库系统的特点(续)假设一个学生的信息包括1.3数据库系统的特点(续)学号姓名性别年龄专业位置长度20050001史玉明女20计算机03020050100李明男21机械301520050234张翔男21化工450……………………………………奖励2005校奖学金,2006国家奖学金2006校优秀学生表1.2学生基本信息文件和奖励文件的结构和内容

1.采用文件系统实现学籍管理1.3数据库系统的特点(续)学号姓名性别年龄专业位置长度1.3数据库系统的特点(续)文件系统管理的文件是流式文件,或者说,文件是无结构的,只是一些字节流。确定了存储学生数据的方式后,需要编写程序来实现数据的录入功能和查询功能。录入功能的基本过程包括从键盘读入学生信息,把奖励写到奖励文件,把基本信息写到学生基本信息文件。查询功能采用顺序查找方法。采用文件系统实现学籍管理的基本特点1.3数据库系统的特点(续)文件系统管理的文件是流式文件1.3数据库系统的特点(续)首先要在数据库中建立两个表STUDENT_INFO:存放学生的基本信息REWARD_PUNISHMENT:存放学生的奖励记录,可以向数据库管理系统发布两条命令来实现。CREATETABLESTUDENT_INFO( SID CHAR(8),SNAMECHAR(10),GENDERCHAR(2),AGE SMALLINT,MAJORCHAR(20));CREATETABLEREWARD_PUNISHMENT( SID CHAR(8),DETAILSVARCHAR(2000));图1.2学生基本信息和奖励的结构

2.采用数据库系统实现学籍管理1.3数据库系统的特点(续)首先要在数据库中建立两个表C1.3数据库系统的特点(续)向数据库管理系统提交下面的两条插入命令就可以把基本信息和奖励记录保存到表STUDENT_INFO和REWARD_PUNISHMENT中,完成录入功能。插入学生的基本信息INSERTINTOSTUDENT_INFO(SID,SNAME,GENDER,AGE,MAJOR)VALUES('20050001','史玉明','女',20,'计算机')--插入学生的基本信息插入学生获得的奖励INSERTINTOREWARD_PUNISHMENT(SID,DETAILS)VALUES('20050001','2005校奖学金,2006国家奖学金')--查询功能可以用一条检索语句实现:SELECTA.SID,SNAME,GENDER,AGE,MAJOR,DETAILSFROMSTUDENT_INFOALEFTJOINREWARD_PUNISHMENTBONA.SID=B.SIDWHEREA.SID='20050001'2.采用数据库系统实现学籍管理1.3数据库系统的特点(续)向数据库管理系统提交下面的两数据库系统的特点(1)数据结构化(2)数据的共享性高,冗余度低,易扩充(3)数据独立性高(4)数据由DBMS统一管理和控制3.数据库系统的特点数据库系统的特点(1)数据结构化3.数据库系统的特点1.3数据库系统的特点(续)整体数据的结构化是数据库的主要特征之一整体结构化不再仅仅针对某一个应用,而是面向全组织。不仅数据内部结构化,整体也是结构化的,数据之间具有联系。数据库中实现的是数据的真正结构化数据的结构用数据模型描述,无须程序定义和解释。数据可以变长。数据的最小存取单位是数据项。(1)数据结构比1.3数据库系统的特点(续)整体数据的结构化是数据库的主要1.3数据库系统的特点(续)数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。数据共享的好处减少数据冗余,节约存储空间。避免数据之间的不相容性与不一致性。使系统易于扩充。(2)数据的共享性高,冗余度低,易扩充1.3数据库系统的特点(续)(2)数据的共享性高,冗余度1.3数据库系统的特点(续)物理独立性指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变时,应用程序不用改变。逻辑独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变时,用户程序也可以不变。数据独立性是由DBMS的二级映像功能来保证的(3)数据独立性高1.3数据库系统的特点(续)物理独立性(3)数据独立性高1.3数据库系统的特点(续)DBMS提供的数据控制功能数据的安全性(Security)保护保护数据,以防止不合法的使用造成的数据的泄密和破坏。数据的完整性(Integrity)检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。并发(Concurrency)控制对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态。(4)数据由DBMS统一管理和控制1.3数据库系统的特点(续)DBMS提供的数据控制功能(4第1章数据库系统论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统论1.1学习目标1.4数据库系统的结构

1.4.1体系结构

1.4.2三级模式

1.4数据库系统的结构1.4.1体系结构1.4.1体系结构1.集中式数据库系统

2.客户机/服务器数据库系统

3.并行数据库系统

4.分布式数据库系统

1.4.1体系结构1.集中式数据库系统1.4.1体系结构(续)集中式数据库系统的DBMS、数据库和应用程序都在一台计算机上。在小型机和大型机上的集中式数据库系统一般是多用户系统,即多个用户通过各自的终端运行不同的应用系统,共享数据库。在微型计算机上的数据库系统一般是单用户的。1.集中式数据库系统1.4.1体系结构(续)集中式数据库系统的DBMS、数据库1.4.1体系结构(续)DBMS、数据库驻留在服务器上,而应用程序放置在客户机上(微型计算机或工作站),客户机和服务器通过网络进行通信。客户机负责业务数据处理流程和应用程序的界面,当要存取数据库中的数据时就向服务器发出请求,服务器接受客户机的请求后进行处理,并将客户要求的数据返回客户机。随着internet技术的应用,客户/服务器两层结构已经发展为三层或多层结构。三层结构一般是指浏览器/应用服务器/数据库服务器结构。用户界面采用统一的浏览器方式,应用服务器上安装应用系统或应用模块,数据库服务器上安装DBMS和数据库。二层或三层结构把数据库系统的功能进行合理的分配,减轻数据库服务器的负担,从而使服务器有更多的能力完成事务处理和数据访问控制,支持更多的用户,提高系统的性能。2.客户/服务器数据库系统1.4.1体系结构(续)DBMS、数据库驻留在服务器上,1.4.1体系结构(续)并行数据库系统是在并行机上运计算机行的具有并行处理能力的数据库系统,是数据库技术与并行计算技术相结合的产物。并行计算机系统有共享内存型、共享磁盘型、非共享型以及混合型。并行计算技术利用多处理机并行处理产生的规模效益来提高系统的整体性能,为数据库系统提供了一个良好的硬件平台。并行数据库系统发挥了多处理机的优势,采用先进的并行查询技术和并行数据分布与管理技术,具有高性能、高可用性、高可扩展性等优点。3.并行数据库系统1.4.1体系结构(续)并行数据库系统是在并行机上运计算机1.4.1体系结构(续)分布式数据库由一组数据组成,这组数据物理上分布在计算机网络的不同结点上,逻辑上却属于同一个系统。网络中的每个结点具有独立处理的能力(称为场地自治),可以执行局部应用,这时只访问本地数据。也可以执行全局应用,此时,通过网络通信子系统访问多个结点上的数据。分布式数据库适应了企业部门分布的组织结构,可以降低费用,提高系统的可靠性和可用性,具有良好的可扩展性。

4.分布式数据库系统1.4.1体系结构(续)分布式数据库由一组数据组成,这组数1.4数据库系统的结构1.4.1体系结构

1.4.2三级模式

1.4数据库系统的结构1.4.1体系结构1.4.2三级模式模式(Schema)

外模式(ExternalSchema)内模式(InternalSchema)1.4.2三级模式模式(Schema)1.4.2三级模式(续)模式(也称逻辑模式)在数据库系统中要描述数据的结构,数据面向所有应用所展现的结构叫做模式。例如,为了满足学籍管理应用和新应用,学生基本信息和奖励的结构如图1.4与图1.2相比,多了一个籍贯数据项,因此,包含了两个应用要使用的全部数据项。CREATETABLESTUDENT_INFO_ALL( SID CHAR(8),NAME CHAR(10),GENDERCHAR(2),AGE SMALLINT,MAJORCHAR(20),NATIVECHAR(10));CREATETABLEREWARD_PUNISHMENT( SID CHAR(8),DETAILSVARCHAR(2000));图1.4学生基本信息和奖励模式

1.模式1.4.2三级模式(续)模式(也称逻辑模式)CREATE1.4.2三级模式(续)外模式(也称子模式或用户模式)数据面向某一应用所展现的模式叫做外模式。

实际上是从模式中挑选出与应用密切相关的数据项。数据库管理系统中提供了描述外模式的命令。由于学籍管理只使用了学生基本信息中的部分数据,需要为它建立一个外模式,如图1.5。CREATEVIEWSTUDENT_INFOASSELECTSID,NAME,GENDER,AGE,MAJORFROMSTUDENT_INFO_ALL;图1.5供学籍管理使用的学生基本信息外模式

2.外模式(ExternalSchema)1.4.2三级模式(续)外模式(也称子模式或用户模式)CR内模式(也称存储模式)是数据库所有数据的内部表示或者说是低层的描述;

内模式用来定义数据的存储方式和物理结构;

记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定一个数据库只有一个内模式数据库管理系统也要提供内模式描述语言(内模式DDL)来定义和描述内模式。1.4.2三级模式(续)3.内模式(InternalSchema)内模式(也称存储模式)1.4.2三级模式(续)3.内模式1.4.2三级模式(续)图1.3数据库系统的三级模式结构1.4.2三级模式(续)图1.3数据库系统的三级模式结1.4.2三级模式(续)数据库系统的三级模式是对数据的三个抽象级别。它把数据的具体组织留给DBMS去做,用户只要抽象地处理数据,而不用关心这些数据在计算机中如何表示和存储,大大减轻了程序员在数据管理方面的负担。采用三级模式,可以很方便地实现数据共享和数据独立性。采用三级模式的优点1.4.2三级模式(续)数据库系统的三级模式是对数第1章数据库系统概论1.1学习目标

1.2数据库系统的定义

1.3数据库系统的特点

1.4数据库系统的结构

1.5数据库管理系统

1.6小结

第1章数据库系统概论1.1学习目标1.5数据库管理系统

1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.1发展过程层次型数据库管理系统网状数据库管理系统关系型数据库管理系统面向对象型数据库管理系统XML数据库管理系统1.5.1发展过程层次型数据库管理系统1.5.1发展过程(续)层次模型是数据库系统中最早出现的数据模型。层次数据库系统的典型代表是IBM公司的IMS(InformationManagementSystem)数据库管理系统。层次模型用树形结构来表示各类实体以及实体间的联系。1.层次型数据库管理系统1.5.1发展过程(续)层次模型是数据库系统中最早出现的数1.5.1发展过程(续)网状数据库系统采用网状模型作为数据的组织方式典型代表是DBTG系统:亦称CODASYL系统20世纪70年代由DBTG提出的一个系统方案提出了数据库系统的基本概念、方法和技术实际系统CullinetSoftware公司的IDMSUnivac公司的DMS1100Honeywell公司的IDS/2HP公司的IMAGE2.网状数据库管理系统1.5.1发展过程(续)网状数据库系统采用网状模型作为数据1.5.1发展过程(续)关系数据库系统采用关系模型作为数据的组织方式1970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型。计算机厂商新推出的数据库管理系统几乎都支持关系模型。典型代表有:SystemR、Oracle、SQLServer等。3.关系型数据库管理系统1.5.1发展过程(续)关系数据库系统采用关系模型作为数据1.5.1发展过程(续)面向对象数据库系统(Object-OrientedDatabaseSystem,OODBS)是数据库技术与面向对象程序设计方法相结合的产物。典型代表:法国O2Technology公司的O2美国ItascaSystem公司的Itasca等4.面向对象型数据库管理系统1.5.1发展过程(续)面向对象数据库系统(Object-1.5.1发展过程(续)为了应对存储和查询XML文档的需要,数据库界研究了XML文档的存储机制、查询优化和索引技术,把XML文档以自然的方式存储在基于树状模型的层次结构中,从而使得数据库对XML文档的处理能力越来越强。2006年发布的IBMDB2Viper实现了同时对关系数据和XML文档的管理。5.XML数据库管理系统1.5.1发展过程(续)为了应对存储和查询XML文档的需要1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.2基本功能数据定义功能DBMS提供数据定义语言(DataDefinitionLanguage,、DDL),用户通过它可以方便地对数据库中的数据对象进行定义。数据操纵功能DBMS提供数据操纵语言(DataManipulationLanguage,、DML),用户可以使用DML操纵数据,以实现对数据库的基本操作:查询、插入、删除和更新。数据库的运行管理数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。数据库的建立和维护功能它包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织、重构造功能和性能监视、分析功能等。这些功能通常是由一些实用程序完成的。1.5.2基本功能数据定义功能1.5数据库管理系统1.5.1发展过程

1.5.2基本功能

1.5.3组成模块1.5.4层次结构1.5.5主要产品介绍1.5数据库管理系统1.5.1发展过程1.5.3组成模块DBMS由两大部分组成查询处理器查询处理器包含数据定义语言(DDL)编译器、数据操纵语言(DML)编译器、嵌入型DML的预编译器以及查询优化等核心程序。存储管理器存储管理器包含授权和安全性控制、完整性检查管理器、事务管理器、文件管理器和缓冲区管理器。

1.5.3组成模块DBMS由两大部分组成1.5.3组成模块(续)数据定义方面的程序模块数据操纵方面的程序模块数据库运行管理方面的程序模块数据库组织、存储和管理方面的程序模块数据库建立、维护和其他方面的程序模块DBMS的组成模块:1.5.3组成模块(续)数据定义方面的程序模块DBMS1.5.3组成模块(续)主要包括:数据库逻辑结构的定义模块,在关系数据库管理系统(RDBMS)中就是创建数据库、创建表、创建视图、创建索引等定义模块。安全性定义,如授权定义及处理模块。完整性定义,如主关码字、外关码字、其他完整性约束定义及处理模块。DDL程序模块的功能:接收相应的定义。进行语法、语义检查。把它们翻译为内部格式存储在数据字典中。创建数据库的模块还根据定义,建立数据库的框架(即形成一个空库),等待装入数据。1.数据定义方面的程序模块1.5.3组成模块(续)主要包括:1.数据定义方面的程序1.5.3组成模块(续)主要包括:查询(Select语句)处理程序模块数据更新(增加、删除、修改)程序模块交互式查询程序模块嵌入式查询程序模块程序模块的功能:对用户的数据操纵请求进行语法分析、语义检查。生成某种内部表示,通常是语法树。对于查询语句,由查询优化器进行优化,如根据一定的等价变换规则把语法树转换成标准形式。对于语法树中的每一个操作,根据存取路径、数据的存储分布、数据的聚簇等信息来选择具体的执行算法。生成查询计划,提交查询执行模块执行,完成对数据库的存取操作。2.数据操纵方面的程序模块1.5.3组成模块(续)主要包括:2.数据操纵方面的程1.5.3组成模块(续)程序模块的功能:负责初始化DBMS。完成建立DBMS的系统缓冲区、系统工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论