第三章 数据库系统结构.docx
- 文档编号:11912516
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:14
- 大小:69.28KB
第三章 数据库系统结构.docx
《第三章 数据库系统结构.docx》由会员分享,可在线阅读,更多相关《第三章 数据库系统结构.docx(14页珍藏版)》请在冰豆网上搜索。
第三章数据库系统结构
第三章数据库系统结构
3.1、数据模型51
3.1.1数据模型的三要素2
1.数据结构2
2.数据操作2
3.数据的约束条件2
3.1.2常见数据模型2
3.1.3概念模型3
1.概念模型的主要概念4
2.概念模型的表示方法4
3.1.4三种主要的逻辑数据模型5
层次数据模型5
网状数据模型6
关系数据模型7
3.2数据库系统的结构8
1.数据库系统的三级模式结构8
2.数据库的二级映像功能与数据独立性9
3.3数据库系统结构分类10
1.单用户数据库系统10
2.主从式结构10
3.分布式结构10
4.客户/服务器结构10
小结11
作业题:
11
习题一11
3.1、数据模型5
3.1.1数据模型的三要素
数据模型由三个要素组成:
数据结构、数据操作和完整性约束。
1.数据结构
数据结构用于描述系统的静态特性,是所研究的对象类型的集合。
数据模型按其数据结构分为层次模型、网状模型和关系模型。
2.数据操作
数据操作用于描述系统的动态特性,是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作集合。
3.数据的约束条件
数据的约束条件是一组完整性规则的集合。
完整性规则是给定的数据及其联系所具有的制约和存储规则,用以限定符合数据库状态以及状态的变化,以保证数据的正确、有效和相容。
3.1.2常见数据模型
根据数据模型应用目的不同,数据模型有以下几种:
● 概念(数据)模型ConceptualDataModel
——面向现实世界建模
——主要用来描述现实世界的概念化结构,与具体的DBMS无关;
现实世界的事物经过人脑的抽象加工,提取出对用户有用的信息,经过组织整理加工形成结余现实世界和计算机世界之间的中间模型;- CDM只关心现实世界中的事物、事务特征、联系;CDM是系统分析员、程序设计员、维护人员、用户之间相互理解的共同语言;CDM能时数据库的设计人员在设计的初始阶段摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据、数据之间的联系;
概念模型必须转换成逻辑模型,才能在DBMS中实现;
最常用的概念模型是E-R模型
● 逻辑(数据)模型(LogicalDataModel)
——面向用户建模
——用户从数据库所看到的数据模型;
是具体的DBMS所支持的数据模型(网状/层次/关系/面向对象);
既要面向用户,也要面向系统;一般的DBMS支持一种LDM(特殊的DBMS支持多种LDM)
● 物理(数据)模型(PhysicalDataModel)
——面向具体的DBMS,面向机器
——描述数据在存储介质上的组织结构
PDM不仅与具体的DBMS有关,还与操作系统和硬件有关
每一种逻辑模型在实现时都有其对应的物理模型
PDM加入了概念模型中为考虑的因素:
触发器、存储过程、主键、外键、索引等
DBMS为保证其独立性和可以执行,大部分PDM的实现工作由系统自动完成,而设计者只设计索引、聚簇等特殊结构
3.1.3概念模型
概念模型是现实世界到机器世界的一个中间层次。
现实世界的事物反映到人的脑子中来,人们把这些事物抽象为一种既不依赖于具体的计算机系统又不为某一DBMS支持的概念模型,然后再把概念模型转换为计算机上某一DBMS支持的数据模型。
1.概念模型的主要概念
实体:
客观存在并相互区别的事物及其事物之间的联系。
例如,一个学生、一门课程、学生的一次选课等都是实体。
关键之处:
一个实体能和别的实体区分开。
实体型(EntityType)
——用实体名及属性名集合来抽象刻画同类实体。
用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
例如,学生(学号,姓名,性别,出生年份,系,入学时间)就是一个实体型。
实体集(EntitySet)
——同型的实体组成的集合。
同型实体的集合称为实体集。
例如,全体学生就是一个实体集。
属性:
实体所具有的某一特性。
例如,学生的学号、姓名、性别、出生年份、系、入学时间等。
码:
惟一标识实体的属性集。
例如,学号是学生实体的码。
域:
属性的取值范围。
例如,年龄的域为大于15小于35的整数,性别的域为(男,女)。
联系:
实体与实体之间以及实体与组成它的各属性间的关系。
联系有三种情况:
一对一联系,一对多联系,多对多联系。
2.概念模型的表示方法
概念模型的表示方法很多,最常用的是实体——联系方法。
该方法用E-R图来描述现实世界的概念模型。
E-R图提供了表示实体型、属性和联系的方法。
实体型:
用矩形表示,矩形框内写明实体名。
属性:
用椭圆形表示,并用无向边将其与相应的实体连接起来。
联系:
用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:
1,1:
n或m:
n)。
如图1-1所示就是一个班级的概念模型的E-R图。
图1-1班级的的E-R图
目前最常用的数据模型有层次模型、网状模型和关系模型。
其中层次模型和网状模型统称为非关系模型。
3.1.4三种主要的逻辑数据模型
层次数据模型
层次模型是数据库系统中最早出现的数据模型,它用树形结构表示各类实体以及实体间的联系。
层次模型数据库系统的典型代表是IBM公司的IMS(InformationManagementSystems)数据库管理系统,这是一个曾经广泛使用的数据库管理系统。
在数据库中,对满足以下两个条件的数据模型称为层次模型。
(1)有且仅有一个节点无双亲,这个节点称为“根节点”。
(2)其他节点有且仅有一个双亲。
若用图来表示,层次模型是一棵倒立的树。
节点层次(Level)从根开始定义,根为第一层,根的孩子称为第二层,根称为其孩子的双亲,同一双亲的孩子称为兄弟。
图1-2给出了一个系的层次模型。
图1-2简单的层次模型
层次模型对具有一对多的层次关系的描述非常自然、直观、容易理解,这是层次数据库的突出优点。
网状数据模型
在数据库中,对满足以下两个条件的数据模型称为网状模型:
(1)允许一个以上的节点无双亲。
(2)一个节点可以有多于一个的双亲。
网状数据模型的典型代表是DBTG系统,也称CODASYL系统,它是20世纪70年代数据系统语言研究会CODASYL(ConferenceOnDataSystemsLanguage)下属的数据库任务组(DataBaseTaskGroup,简称DBTG)提出的一个系统方案。
若用图表示,网状模型是一个网络。
图1-3给出了一个抽象的简单的网状模型。
图1-3简单的网状模型
自然界中实体型间的联系更多的是非层次关系,用层次模型表示非树形结构是很不直接的,网状模型则可以克服这一弊病。
关系数据模型
关系模型是目前最重要的一种模型。
美国IBM公司的研究员E.F.Codd于1970年发表题为“大型共享系统的关系数据库的关系模型”的论文,文中首次提出了数据库系统的关系模型。
20世纪80年代以来,计算机厂商新推出的数据库管理系统(DBMS)几乎都支持关系模型,非关系系统的产品也大都加上了关系接口。
数据库领域当前的研究工作都是以关系方法为基础的。
本书的重点也将放在关系数据模型上。
这里只简单勾画一下关系模型。
1.关系数据模型的数据结构
一个关系模型的逻辑结构是一张二维表,它由行和列组成。
每一行称为一个元组,每一列称为一个字段。
2.关系数据模型的数据操纵与完整性约束
关系数据模型的操纵主要包括查询、插入、删除和更新数据。
这些操作必须满足关系的完整性约束条件。
关系的完整性约束条件包括三大类:
实体完整性、参照完整性和用户定义的完整性。
其具体含义将在后面介绍。
3.关系数据模型的存储结构
在关系数据模型中,实体及实体间的联系都用表来表示。
在数据库的物理组织中,表以文件形式存储,每一个表通常对应一种文件结构。
4.关系数据模型的优缺点
关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。
关系模型的概念单一,无论实体还是实体之间的联系都用关系来表示,对数据的检索结果也是关系(即表),所以结构简单、清晰,用户易懂易用。
关系模型的存取路径对用户透明,从而具有更高的数据独立性,更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
所以关系数据模型诞生以后发展迅速,深受用户的喜爱。
当然,关系数据模型也有缺点,其中最主要的缺点是,由于存取路径对用户透明,查询效率往往不如非关系数据模型。
因此,为了提高性能,必须对用户的查询请求进行优化,这增加了开发数据库管理系统的负担。
3.2数据库系统的结构
1.数据库系统的三级模式结构
当设计数据库时,对数据库的结构感兴趣;即模式(Schema):
数据库中数据的逻辑结构和特征的描述。
当应用数据库时,关心的是数据库中存在的数据——实例(Instance)。
数据库中的数据经常变化,而数据库的结构在一定时间范围内不会改变。
数据库中结构的定义可以在多个抽象级别进行,形成多个级别的数据库模式。
数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级组成。
(1)外模式。
外模式也称子模式或用户模式,是模式的子集或变形,是与某一应用有关的数据的逻辑表示;不同用户需求不同,看待数据的方式也可以不同,对数据保密的要求也可以不同,使用的程序设计语言也可以不同,因此不同用户的外模式的描述可以使不同的。
它是数据库用户(包括应用程序员和最终用户)看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
一个数据库可以有多个外模式。
(2)模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公用数据视图。
DBMS提供数据定义语言DDL来描述逻辑模式,严格定义数据的名称、特征、相互关系、约束等。
一个数据库只有一个模式。
(3)内模式。
内模式也称存储模式,它是数据物理和存储结构的描述,是低级描述,是数据在数据库内部的表示方式。
一般由DBMS提供的语言或工具完成;要修改存储数据库的结构(例如,用倒排文件代替多链表),那么仅仅需要把这些修改反映在存储模式中;通常我们不关心内模式的具体技术实现,而是从一般组织的观点(即概念模式)或用户的观点(外模式)来讨论数据库的描述。
但我们必须意识到基本的内模式和存储数据库的存在。
一个数据库只有一个内模式。
2.数据库的二级映像功能与数据独立性
数据库系统在这三级模式之间提供了两层映像:
外模式/模式映像和模式/内模式映像。
正是这两层映像保证了数据库系统的数据能够具有较高的逻辑独立性和物理独立性。
模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。
对应于同一个模式可以有任意多个外模式。
对于每一个外模式,数据库系统都有一个外模式/模式映像,它定义了该外模式与模式之间的对应关系。
当模式改变时(例如,增加新的数据类型、新的数据项、新的关系等),由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变,从而应用程序不必修改,保证了数据的逻辑独立性。
数据库中只有一个模式,也只有一个内模式,所以模式/内模式映像是惟一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。
当数据库的存储结构改变时(例如,采用了更先进的存储结构),由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而保证了数据的物理独立性。
3.3数据库系统结构分类
从最终用户角度来看,数据库系统分为单用户结构、主从式结构、分布式结构和客户/服务器结构。
1.单用户数据库系统
单用户数据库系统是一种早期的最简单的数据库系统。
在这种系统中,整个数据库系统(包括应用程序、DBMS、数据)都装在一台计算机上,由一个用户独占,不同机器之间不能共享数据。
2.主从式结构
主从式结构是指一个主机带多个终端的多用户结构。
在这种结构中,数据库系统(包括应用程序、DBMS、数据)都集中存放在主机上,所有处理任务都由主机来完成,各个用户通过主机的终端并发地存取数据库,共享数据资源。
3.分布式结构
分布式结构是指数据库中的数据在逻辑上是一个整体,但物理地分布在计算机网络的不同节点上。
网络中的每个节点都可以独立处理本地数据库中的数据,执行局部应用;同时也可以同时存取和处理多个异地数据库中的数据,执行全局应用。
4.客户/服务器结构
主从式数据库系统中的主机和分布式数据库系统中的每个节点机是一个通用计算机,既执行DBMS功能又执行应用程序。
随着工作站功能的增强和广泛使用,人们开始把DBMS功能和应用分开,网络中某个(些)节点上的计算机专门用于执行DBMS功能,称为数据库服务器,简称服务器;其他节点上的计算机安装DBMS的外围应用开发工具,支持用户的应用,称为客户机,这就是客户/服务器结构的数据库系统。
在客户/服务器结构中,客户端的用户请求被传送到数据库服务器,数据库服务器进行处理后,只将结果返回给用户(而不是整个数据),从而显著减少了网络上的数据传输量,提高了系统的性能、吞吐量和负载能力;另一方面,客户/服务器结构的数据库往往更加开放。
客户与服务器一般都能在多种不同的硬件和软件平台上运行,可以使用不同厂商的数据库应用开发工具,应用程序具有更强的可移植性,同时也可以减少软件维护开销。
小结
本章主要讲述了数据库的有关概念,通过本章的学习,读者应该理解数据库的基本概念、数据库的三级模式结构和二级映像功能;知道数据模型的三要素,会画E-R图。
作业题:
学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教师,每个教师只教一门课,每门课可由多个教师教;每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。
用E-R图画出该学校的概念模型
习题一
一、选择题
1.()是位于用户与操作系统之间的一层数据管理软件。
数据库在建立、使用和维护时由其统一管理、统一控制。
A.DBMSB.DBC.DBSD.DBA
2.()是长期存储在计算机内有序的、可共享的数据集合。
A.DATAB.INFORMATIONC.DBD.DBS
3.文字、图形、图像、声音、学生的档案记录、货物的运输情况等,这些都是()。
A.DATAB.INFORMATIONC.DBD.其他
4.数据库应用系统是由数据库、数据库管理系统(及其开发工具)、应用系统、()和用户构成。
A.DBMSB.DBC.DBSD.DBA
5.目前()数据库系统已逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统。
A.关系B.面向对象C.分布
6.()是刻画一个数据模型性质最重要的方面。
因此在数据库系统中,人们通常按()的类型来命名数据模型。
A.数据结构B.数据操纵C.完整性约束
二、填空题
1.数据库就是长期储存在计算机内_______、_______的数据集合。
2.数据库管理系统是位于用户与操作系统之间的一层数据管理软件。
数据库在_______、_______和_______时由数据库管理系统统一管理、统一控制。
3.数据库应用系统是由_______、_______、_______、_______和_______构成。
4.数据库技术经历了_______、_______和_______三个发展阶段。
5.数据模型通常都是由_______、_______和_______三个要素组成。
6.目前最常用的数据模型有_______、_______和_______。
20世纪80年代以来,_______逐渐占主导地位。
三、判断题
1.数据是对客观事物的属性的描述与记载,学生的档案记录、货物的运输情况等都是数据。
2.数据库中的数据可为各种用户共享。
3.使用文件系统管理数据要比数据库方便。
4.数据模型是机器世界的模拟。
四、简答题
1.简述计算机数据管理技术发展的三个阶段。
2.常用的三种数据模型的数据结构各有什么特点?
3.分别给出一个层次、网状和关系模型的实例。
4.学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教师,每个教师只教一门课,每门课可由多个教师教;每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。
用E-R图画出该学校的概念模型。
5.从数据库管理系统的角度看,数据库系统的三级模式结构是什么?
6.从用户角度看,数据库系统都有哪些体系结构?
7.数据独立性包括哪两个方面,含义分别是什么?
8.数据库管理系统有哪些主要功能?
9.数据库管理系统通常由哪几部分组成?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 数据库系统结构 第三 数据库 系统 结构