《第2章数据库系统结构精选文档.ppt》由会员分享,可在线阅读,更多相关《第2章数据库系统结构精选文档.ppt(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第2章数据库系统结构1本讲稿第一页,共四十九页第第2章章 数据库系统结构数据库系统结构 n n数据描述数据描述n n数据模型数据模型n n数据库的体系结构数据库的体系结构n n数据库管理系统数据库管理系统n n数据库系统数据库系统2本讲稿第二页,共四十九页第一节第一节 数据描述数据描述 n概念设计中的数据描述概念设计中的数据描述n逻辑设计中的数据描述逻辑设计中的数据描述n存储介质层次及数据描述存储介质层次及数据描述n数据联系的描述数据联系的描述2022/9/223本讲稿第三页,共四十九页一、概念设计中的数据描述 n实体实体(Entity)u实实体体是是客客观观存存在在、可可以以相相互互区区分分
2、的的事事物物,既既可可以以是是实实际际存存在在的的对对象象,也也可可以以是是某某种种概概念念。例如:一个工厂、一个车间、一种操作流程等。例如:一个工厂、一个车间、一种操作流程等。n属性属性(Attribute)u事事物物是是有有特特性性的的。反反映映在在实实体体上上,就就是是实实体体的的属属性性。一一个个实实体体具具有有有有限限个个属属性性,也也可可以以说说是这些属性的总和组成了这个实体。是这些属性的总和组成了这个实体。4本讲稿第四页,共四十九页一、概念设计中的数据描述 n实体集实体集(Entityset)u所所有有属属性性名名完完全全相相同同的的实实体体往往往往集集合合在在一一起起,称称为为
3、实实体体集集。例例如如:全全体体职职工工就就是是一一个个实实体体集集。为为了了区区分分实实体体集集,每每个个实实体体集集都都有有一一个个名名称称,即实体名。即实体名。n实体标识符实体标识符(Identifier)u能能惟惟一一标标识识实实体体的的属属性性或或属属性性集集。也也称称关关键键码,或键。码,或键。5本讲稿第五页,共四十九页二、逻辑设计中的数据描述 n字段(字段(FieldField)u标记实体属性的命名单位。也称数据项。标记实体属性的命名单位。也称数据项。n记录(记录(Record)u字段的有序集合。字段的有序集合。n文件(文件(File)u同一类记录的集合。同一类记录的集合。n关键
4、码(关键码(Key)u能惟一标识文件中每个记录的字段。能惟一标识文件中每个记录的字段。6本讲稿第六页,共四十九页三、存储介质层次及数据描述 n高速缓存高速缓存n主存主存n快闪存快闪存n磁盘磁盘n光盘光盘n磁带磁带 7本讲稿第七页,共四十九页四、数据联系的描述 n实体集内部(实体和实体之间)的联系实体集内部(实体和实体之间)的联系n实体间的联系有三种:实体间的联系有三种:u同一实体集中各实体之间的联系同一实体集中各实体之间的联系(一元联系一元联系)。u两个实体集中各实体之间的联系两个实体集中各实体之间的联系(两元联系两元联系)。u三个实体集中各实体之间的联系三个实体集中各实体之间的联系(三元联系
5、三元联系)。n实体间联系有三种情况:实体间联系有三种情况:u一对一一对一 (1 1:1 1)u一对多一对多 (1 1:N N)u多对多多对多 (M M:N N)8本讲稿第八页,共四十九页四、数据联系的描述 n一对一联系一对一联系(1 1)u现现有有实实体体集集A和和B,若若对对于于某某个个联联系系K来来说说,A中中每每个个实实体体至至多多与与B中中一一个个实实体体相相联联系系,反反之之亦亦然然,则则称称A与与B对对于于联联系系K来来说说,具具有一对一的联系,见图有一对一的联系,见图21(a)n一对多联系一对多联系(1 n)u对对于于联联系系K来来说说,若若A中中的的每每一一实实体体,B中中可可
6、有有多多个个实实体体与与之之联联系系;但但对对B中中的的每每一一实实体体,A中中最最多多有有一一个个实实体体与与之之联联系系,则则称称A与与B对对于于联联系系K来来说说是是一一对对多多联联系系的的,见见图图21(b)。9本讲稿第九页,共四十九页四、数据联系的描述 n多对多联系多对多联系(m n)u 对对于于联联系系K来来说说,若若A中中的的每每一一实实体体,B中中有有多多个个实实体体与与之之联联系系,反反之之亦亦然然,则则称称A与与B对对于于联联系系K来来说说是是多多对对多多联联系系的的,见见图图21(c)。10本讲稿第十页,共四十九页 图图21 两个实体集之间的联系两个实体集之间的联系(a)
7、一对一联系;一对一联系;(b)一对多联系;一对多联系;(c)多对多联系多对多联系 11本讲稿第十一页,共四十九页第二节第二节 数据模型数据模型 n数据模型的定义数据模型的定义n实体联系模型实体联系模型n层次模型层次模型n网状模型网状模型n关系模型关系模型n面向对象模型面向对象模型12本讲稿第十二页,共四十九页一、数据模型的定义n数据模型分两种:数据模型分两种:n概概念念数数据据模模型型:用用于于建建立立信信息息世世界界的的数数据据模模型型,与与硬硬件件、DBMSDBMS无无关关,实实现现方方法法是是“实实体体联系模型联系模型”。n结结构构数数据据模模型型:直直接接面面向向数数据据库库的的逻逻辑
8、辑结结构构,与硬件、与硬件、DBMSDBMS有关,有三部分构成:有关,有三部分构成:u数据结构数据结构u数据操作数据操作u数据完整性数据完整性13本讲稿第十三页,共四十九页二、实体联系模型n在在设设计计概概念念模模型型时时,最最著著名名、最最实实用用的的是是P.P.S.ChenP.P.S.Chen(陈陈品品山山)于于19761976年年提提出出的的“实实体体 联联 系系 模模 型型”(EntityRelationship EntityRelationship Approach,Approach,简称简称ERER模型)。模型)。nERER图中四个基本成分:图中四个基本成分:u矩形框:表示实体类型
9、矩形框:表示实体类型u菱形框:表示联系类型菱形框:表示联系类型u椭圆形框:表示实体类型或联系类型的属性椭圆形框:表示实体类型或联系类型的属性u连线:实体与书香之间、实体与联系之间连线:实体与书香之间、实体与联系之间14本讲稿第十四页,共四十九页图图 2 2 职工的职工的ER模型表示模型表示 15本讲稿第十五页,共四十九页图图 2 3 部门和职工的一对多联系部门和职工的一对多联系 图图 2 4 职工和工资的一对一联系职工和工资的一对一联系 16本讲稿第十六页,共四十九页图图 2 5 职工和项目的多对多联系职工和项目的多对多联系 17本讲稿第十七页,共四十九页二、实体联系模型n在ER模型中,可以表
10、示两个以上实体集之间的联系,称为多元联系。图图 2 6 演员、演员、电影和制片公司之间的三元联系电影和制片公司之间的三元联系 18本讲稿第十八页,共四十九页二、实体联系模型n自身联系自身联系n在在一一个个联联系系中中,一一个个实实体体集集可可以以出出现现两两次次或或多多次次,扮扮演演多多个个不不同同角角色色,此此种种情情况况称称为为实实体体集集的自身联系的自身联系。图图 2 7 一个自身联系的例子一个自身联系的例子 19本讲稿第十九页,共四十九页三、层次模型n在在现现实实世世界界中中,有有许许多多事事物物是是按按层层次次组组织织起起来来的的,例例如如,一一个个学学校校有有若若干干个个系系,一一
11、个个系系有有若若干干个个班班级级和和教教研研室室,一一个个班班级级有有若若干干个个学学生生,一一个个教教研研室室有有若若干干教教师师。其其数数据据库库模模型型如如图图2-8 所示所示,可见层次模型是一棵倒挂的树。可见层次模型是一棵倒挂的树。n图图中中系系和和班班级级、班班级级和和学学生生、教教研研室室和和教教师师等等都都构构成成了了双双亲亲与与子子女女关关系系,这这是是层层次次模模型型中中最最基基本本的的数数据据关关系系。层层次次模模型型有有以以下下两两个个特点:特点:有有且且仅仅有有一一个个结结点点无无父父结结点点,这这样样的的结结点点称称为根结点;为根结点;非根结点都有且仅有一个父结点。非
12、根结点都有且仅有一个父结点。20本讲稿第二十页,共四十九页图图 2 8 学校层次数据库模型学校层次数据库模型 21本讲稿第二十一页,共四十九页图图 2 9 学校层次数据库模型的一个实例学校层次数据库模型的一个实例 22本讲稿第二十二页,共四十九页四、网状模型 n把把层层次次模模型型的的限限制制放放开开:一一个个结结点点可可以以有有一一个个以以上上的的父父结结点点,就就得得到到网网状状模模型型。网网状状模模型型还可以有的两个特点是:还可以有的两个特点是:u 可能有一个以上的结点无父结点;可能有一个以上的结点无父结点;u 结点与其父结点之间的联系可以不止一个。结点与其父结点之间的联系可以不止一个。
13、n层层次次模模型型中中子子女女结结点点与与双双亲亲结结点点的的联联系系是是唯唯一一的的,而而在在网网状状模模型型中中这这种种联联系系可可以以不不唯唯一一。因因此此,在在网网状状模模型型中中,每每一一个个联联系系都都必必须须命命名名,每每一一个个联联系系都都有有与与之之相相关关的的双双亲亲记记录录和和子子女女记记录录。图图 2 10(a)、(b)、(c)给给出出了了几几个个网状模型的例子。网状模型的例子。23本讲稿第二十三页,共四十九页图图 2 10 几个网状模型的例子几个网状模型的例子24本讲稿第二十四页,共四十九页五、关系模型 n1970年,美国年,美国IBM公司的研究员公司的研究员E.F.
14、Codd在他在他的著名论文的著名论文“Arelational Modelof Datafor Large SharedData Banks”中首先提出了关系中首先提出了关系数据模型,标志着数据库系统新时代的来临。数据模型,标志着数据库系统新时代的来临。以后,他又接连发表了多篇文章,奠定了关系以后,他又接连发表了多篇文章,奠定了关系数据库的理论基础。数据库的理论基础。E.F.Codd于于1981年荣获年荣获ACM图灵奖。图灵奖。n1974年,年,IBM公司公司SanJose研究室研制成功关研究室研制成功关系数据库实验系统系数据库实验系统SystemR,以后又陆续推出,以后又陆续推出了新的关系数据
15、库软件产品了新的关系数据库软件产品SQL/DS和和DB2等等。25本讲稿第二十五页,共四十九页五、关系模型 n1980年后,各种年后,各种RDBMS的产品迅速出现,如的产品迅速出现,如Oracle、Ingress、Sysbase、Informix、dBASE、FoxBase、FoxPro等,关系数据库等,关系数据库系统统治了数据库市场,数据库的应用领域迅系统统治了数据库市场,数据库的应用领域迅速扩大。速扩大。n与层次模型和网状模型相比,关系模型概念简与层次模型和网状模型相比,关系模型概念简单、清晰,并且具有严格的数据基础,形成了单、清晰,并且具有严格的数据基础,形成了关系数据理论,操作也直观、
16、容易,因此易学关系数据理论,操作也直观、容易,因此易学易用。无论是数据库的设计和建立,还是数据易用。无论是数据库的设计和建立,还是数据库的使用和维护,都比非关系模型时代简便得库的使用和维护,都比非关系模型时代简便得多。多。26本讲稿第二十六页,共四十九页表表21 概念模型对应的表概念模型对应的表 27本讲稿第二十七页,共四十九页六、面向对象模型 n面向对象数据模型(面向对象数据模型(ObjectOriented Data Model,简称简称OO Data Model)是一种可扩充的数)是一种可扩充的数据模型据模型,在该数据模型中在该数据模型中,数据模型是可扩充的数据模型是可扩充的,即用即用户
17、可根据需要户可根据需要,自己定义新的数据类型及相应的约束自己定义新的数据类型及相应的约束和操作和操作。n对象对象u对对象象是是面面向向对对象象数数据据模模型型的的基基本本结结构构,是是面面向向对对象象数数据据库库系系统统的的核核心心。一一个个对对象象是是由由一一些些数数据据以以及及能能够够作作用用在在这这些些数数据据上上的的操操作作组组成成。例例如如,一一个个职职工工对对象象,将将包包含含与与职职工工相相关关的的数数据据(职职工工号号、姓姓名名、性性别别、职职称称、部部门门等等)以以及及能能够够在在这这些些职职工工数数据据上上进进行行的的操操作作(增加职工、(增加职工、删除职工、删除职工、改变
18、职称等等)。改变职称等等)。28本讲稿第二十八页,共四十九页六、面向对象模型 n类类u在组织信息时在组织信息时,人们总是将具有相似特性的人们总是将具有相似特性的对象归为一类。对象归为一类。类中的每个对象称为类的类中的每个对象称为类的一个实例(一个实例(Instance)。)。一个类中的所有一个类中的所有对象其特性必须相同对象其特性必须相同,即具有相同的属性、即具有相同的属性、响应相同的消息、响应相同的消息、使用相同的方法。使用相同的方法。u如如果果说说类类的的概概念念相相当当于于关关系系模模型型中中的的关关系系模模式式,那那么么类类的的实实例例类类似似于于元元组组,类类的的实实例例之之间和类之
19、间可以有复杂的联系。间和类之间可以有复杂的联系。29本讲稿第二十九页,共四十九页图图 2 11 学校数据库的类层次结构图学校数据库的类层次结构图30本讲稿第三十页,共四十九页第三节第三节 数据库的体系结构数据库的体系结构n三级模式结构三级模式结构n三级结构和两级映像三级结构和两级映像n两级数据独立性两级数据独立性n用户及用户界面用户及用户界面31本讲稿第三十一页,共四十九页一、三级模式结构n数数据据库库中中,整整体体数数据据的的逻逻辑辑结结构构,存存储储结结构构的的需需求求发发生生变变化化是是有有可可能能的的,正正常常的的,有有时时也也是是必必需需的的。而而单单个个用用户户不不希希望望自自己己
20、面面对对的的局局部部数数据据的的逻逻辑辑结结构构发发生生变变化化也也是是合合理理的的,必必须须尊尊重重的的。为为此此,各各实实际际的的数数据据库库管管理理系系统统虽虽然然使使用用的的环环境境不不同同,内内部部数数据据的的存存储储结结构构不不同同,使使用用的的语语言言也也不不同同,但但对对数数据据,一一般般都都采采用用三三级级模模式结构。式结构。n数数据据的的三三级级模模式式结结构构包包含含有有外外模模式式、模模式式和和内内模式。模式。图图212 32本讲稿第三十二页,共四十九页图图212 数据库系统中数据的三级模式结构数据库系统中数据的三级模式结构 33本讲稿第三十三页,共四十九页二、三级结构
21、和两级映像n模式(模式(Schema)u模模式式也也称称概概念念模模式式,是是数数据据库库中中全全体体数数据据在在逻辑上的视图。逻辑上的视图。n外模式(外模式(External Schema)u外外模模式式也也称称子子模模式式,是是个个别别用用户户的的数数据据视视图图,即个别用户涉及到的数据的逻辑结构。即个别用户涉及到的数据的逻辑结构。n内模式(内模式(Internal Schema)u内内模模式式也也称称存存储储模模式式。它它既既定定义义了了数数据据库库中中全全部部数数据据的的物物理理结结构构,还还定定义义了了数数据据的的存存储储方法、存取策略等。方法、存取策略等。34本讲稿第三十四页,共四
22、十九页二、三级结构和两级映像n二级映象二级映象u外模式外模式/模式映象模式映象u模式模式/内模式映象内模式映象u在在外外模模式式与与模模式式之之间间通通过过外外模模式式/模模式式映映象象进进行行转转换换。当当模模式式改改变变时时,只只要要相相应应改改变变外外模模式式/模模式式映映象象,可可使使外外模模式式保保持持不不变变。在在模模式式与与内内模模式式之之间间通通过过模模式式/内内模模式式映映象象进进行转换。行转换。35本讲稿第三十五页,共四十九页三、两级数据独立性n逻辑独立性逻辑独立性n物理独立性物理独立性n当数据库的存储结构改变时,只要相应改当数据库的存储结构改变时,只要相应改变模式变模式/
23、内模式映象,可使模式保持不变,内模式映象,可使模式保持不变,从而,外模式也可保持不变。这二级转换从而,外模式也可保持不变。这二级转换使数据库系统的数据具有较高的逻辑独立使数据库系统的数据具有较高的逻辑独立性和物理独立性。性和物理独立性。36本讲稿第三十六页,共四十九页四、用户及用户界面n用用户户是是指指使使用用数数据据库库的的应应用用程程序序或或联联机机终终端用户。端用户。n编编写写应应用用程程序序的的语语言言是是高高级级程程序序设设计计语语言言,称为主语言。称为主语言。nDBMS还提供数据操纵语言还提供数据操纵语言DML。37本讲稿第三十七页,共四十九页第四节第四节 数据库管理系统数据库管理
24、系统nDBMS的工作模式的工作模式nDBMS的主要功能的主要功能nDBMS的模块组成的模块组成38本讲稿第三十八页,共四十九页一、DBMS的工作模式的工作模式nDBMS的工作模式:的工作模式:u接受应用程序的数据请求和处理请求接受应用程序的数据请求和处理请求u将用户的数据请求转换成复杂的机器代码将用户的数据请求转换成复杂的机器代码u实现对数据库的操作实现对数据库的操作u从对数据库的操作中接受查询结果从对数据库的操作中接受查询结果u对查询结果进行处理对查询结果进行处理u对处理结果返回给用户对处理结果返回给用户n介介绍绍一一下下访访问问数数据据库库的的主主要要步步骤骤,该该过过程程如如图图213所
25、示所示39本讲稿第三十九页,共四十九页图图213 访问数据库的主要步骤访问数据库的主要步骤 40本讲稿第四十页,共四十九页二、DBMS的主要功能的主要功能n数据库的定义功能数据库的定义功能uDBMS提供提供DDL来定义模式、外模式和内模式来定义模式、外模式和内模式n数据库的操纵功能数据库的操纵功能uDBMS应提供数据操纵语言(应提供数据操纵语言(DML)供用户对)供用户对数据库中的数据进行检索、修改、删除以及插数据库中的数据进行检索、修改、删除以及插入工作。入工作。n数据库的保护功能数据库的保护功能u数据库的恢复、并发控制、完整性、安全性数据库的恢复、并发控制、完整性、安全性n数据库的维护功能
26、数据库的维护功能n数据字典数据字典DD41本讲稿第四十一页,共四十九页三、DBMS的模块组成的模块组成n查询处理器查询处理器uDMLDML编编译译器器、嵌嵌入入型型DMLDML的的预预编编译译器器、DMLDML编译编译器、器、查询查询运行核心程序。运行核心程序。n存储管理器存储管理器 u授授权权和和完完整整性性管管理理器器、事事务务管管理理器器、文件管理器、缓冲区管理器。文件管理器、缓冲区管理器。42本讲稿第四十二页,共四十九页第五节第五节 数据库系统数据库系统nDBS的组成的组成nDBS的全局结构的全局结构nDBS结构的分类结构的分类nDBS的效益的效益 43本讲稿第四十三页,共四十九页一、
27、DBS的组成的组成 n数据库数据库u物理数据库,描述数据库。物理数据库,描述数据库。n硬件硬件u计算机硬件,存储设备。计算机硬件,存储设备。n软件软件uDBMSDBMS、OSOS、各各种种宿宿主主语语言言和和应应用用开开发发支支撑撑软件。软件。n数据库管理员(数据库管理员(DBADBA)u控制数据整体结构,负责控制数据整体结构,负责DBSDBS的正常运行。的正常运行。44本讲稿第四十四页,共四十九页一、DBS的组成 nDBADBA的职责的职责u概念模式和内模式的定义修改概念模式和内模式的定义修改u对数据库访问的授权对数据库访问的授权u完整性约束的说明。完整性约束的说明。45本讲稿第四十五页,共
28、四十九页二、DBS的全局结构 n数据库用户数据库用户uDBADBA、专业用户、应用程序员、最终用户。、专业用户、应用程序员、最终用户。nDBMSDBMS的查询处理器的查询处理器uDMLDML编编译译器器、嵌嵌入入型型DMLDML的的预预编编译译器器、DMLDML编编译译器、查询运行核心程序。器、查询运行核心程序。nDBMSDBMS的存储管理器的存储管理器u授授权权和和完完整整性性管管理理器器、事事务务管管理理器器、文文件件管管理器、缓冲区管理器。理器、缓冲区管理器。n磁盘存储器中的数据结构磁盘存储器中的数据结构u数数据据文文件件、数数据据字字典典、索索引引文文件件、统统计计数数据据组织组织。46本讲稿第四十六页,共四十九页三、DBS结构的分类 n集中式集中式DBSn客户客户/服务器式服务器式DBSn并行式并行式DBSn分布式分布式DBS47本讲稿第四十七页,共四十九页四、DBS的效益 n灵活性灵活性n简易性简易性n面向用户面向用户n数据控制数据控制n程序设计方便可维护性程序设计方便可维护性n标准化标准化 48本讲稿第四十八页,共四十九页精精 读读:教材 P.11 P.33习习 题:题:P.35 2.3 2.6 2.8 2.9精读和习题要求精读和习题要求49本讲稿第四十九页,共四十九页