3.26学习总结
数据库原理第二章 数据库系统结构
2.1数据和数据模型
数据是我们要处理的信息
数据模型是数据的组织方式
2.1.1数据和信息
静态特征:
1.数据的基本结构
2.数据间的联系
3.对数据取值范围的约束
动态特征:
对数据进行符合一定规则的操作:查询数据、更改数据
数据模型三要素:
数据的基本结构
数据的约束条件
定义在数据上的操作
2.1.2数据模型
在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。
三方面要求:
1.能比较真实地模拟现实世界
2.容易为人所理解
3.便于在计算机上实现
数据模型实际上是模型化数据和信息的工具,分为两大类:
概念层数据模型:
它是从数据的应用语义视角来抽取并按用户的观点来对数据和信息进行建模,用于数据库设计。
把现实世界中的客观对象抽象为概念模型:抽象技术
组织模型:从数据的组织方式来描述数据。
把概念模型转换为某一DBMS支持:转换技术
组织方式(组织模型):
1.层状模型
2.网状模型
3.关系模型
4.对象-关系模型
2.2概念层模型数据
2.2.1基本概念
概念模型的用途:
1.概念模型用于信息世界的建模
2.是现实世界到机器世界的一个中间层次
3.是数据库设计的有力工具
4.数据库设计人员和用户之间进行交流的语言,与DBMS无关
对概念模型的基本要求:
1.较强的语义表达能力
2.能够方便、直接地表达应用中的各种语义
3.知识 简单、清晰、易于用户理解
常用的概念模型:
实体-联系模型(Entity-Relationship Model) : E-R
面向对象的模型(Object-Oriented Model)
2.2.2实体-联系模型
实体:是具有公共性质并可相互区分的现实世界对象的集合
属性:描述实体或者联系的性质或特征的数据项,属于一个实体的所有实例都具有相同的性质,在E-R模型中,这些性质或特征就是属性
联系:现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
实体内部的联系:通常是指组成实体的各属性之间的联系。
实体之间的联系:通常是指不同实体集之间的联系
联系分三类:
一对一联系
一对多联系
多对多联系
2.3组织层数据模型
组织层数据模型是从数据的组织方式的角度来描述信息,分为层次模型、网状模型、关系模型和面向对象模型四种
2.3.1关系模型的数据结构
关系:关系就是二维表。并满足如下性质:
关系表中的每一列都是不可再分的基本属性; 表中的行、列次序并不重要。
元组:表中的每一行称作是一个元组,它相当于一个记录值。
分量:元组中的每一个属性值称为元组的一个分量,n元关系的每个元组有n个分量。
属性:表中的每一列是一个属性值集,列可以命名,称为属性名。
主码:也称主键或主关键字,是关系中用于唯一确定一个元组的一个属性或最小的属性组,指定候选码中的一个作为主码,主码就是从候选码中选取出来做主码的属性
候选码:能够唯一标识关系中的一个元组的一个属性或最小属性组。
域:属性的取值范围 。如,性别只能是‘男’和‘女’两个值。
关系数据库:对应于一个关系模型的所有关系的集合称为关系数据库。
关系模式:关系模式是关系的“型”或元组的结构共性的描述。关系模式实际上对应关系表的表头。设关系名为R,属性分别为A1,A2,…,An,则关系模式可以表示为: R(A1,A2,…,An)
2.3.2关系模型的数据操作
数据操作包括四种:查询、插入、删除和修改数据
2.3.3关系模型的数据完整性约束
数据完整性:是指数据库中存储当代数据是有意义的或正确的
约束分三类:实体完整性 参照完整性 用户定义的完整性
实体完整性和参照完整性: 关系模型必须满足的完整性约束条件。称为关系的两个不变性,应该由关系系统自动支持。
用户定义的完整性: 应用领域需要遵循的约束条件,体现了具体领域中的语义约束。
实体完整性:指的是关系数据库中所有的表都必须有主码,而且表中不允许存在如下记录:
无主码值的记录,主码值相同的记录
主属性:包含在任一候选码中的属性称为主属性。
非主属性:不包含在任一候选码中的属性称为非主属性。
外码:取作本表(子表)属性之一的外表(主表)主码。
参照完整性 (引用完整性):描述实体与实体之间的联系
用户定义的完整性(域完整性或语义完整性):针对某一具体应用领域定义的数据约束条件,反应某一具体应用所设计的数据必须满足应用语义的要求
2.4数据库系统的结构
2.4.1三级模式结构
ANSI/SPARC体系结构将数据库划分为三层结构:内模式、概念模式、外模式
内模式:最接近物理存储,也就是数据的物理存储方式
外模式:最接近用户,也就是用户所看到的数据视图
概念模式:介于内模式和外模式之间的中间层次,也称为模式
外模式(也称子模式或用户模式):
数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
外模式的用途 :保证数据库安全性的一个有力措施 每个用户只能看见和访问所对应的外模式中的数据
概念模式(也称为逻辑模式或模式):
数据库中全体数据的逻辑结构和特征的描述 包括数据的逻辑结构(数据项的名字、类型、取值范围等)、数据之间的联系、数据有关的安全性、完整性要求
一个数据库只有一个概念模式
概念模式的地位:
是数据库系统模式结构的中间层:
与数据的物理存储细节和硬件环境无关
与具体的应用程序、开发工具及程序设计语言无关
内模式(也称存储模式):
是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式 记录的存储方式(顺序存储,B树结构存储,hash方法存储)
索引的组织方式 :数据是否压缩存储 数据是否加密 数据存储记录结构的规定
一个数据库只有一个内模式
2.4.2模式映像与数据独立性
三级模式是对数据的三个抽象级别,二级映像在DBMS内部实现这三个抽象层次的联系和转换
两级映像:
外模式/模式映像
模式/内模式映像
两级映像功能保证了数据具有较高的逻辑独立性和物理独立性,使数据库应用程序不随数据库数据的逻辑或存储结构的变动而变动
外模式/模式映像:
同一个概念模式可以有多个外模式
关于模式
模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构
关于映像 对于每一个外模式,数据库系统都有一个外模式/概念模式映像,定义外模式与概念模式之间的对应关系
外模式/概念模式映像的作用:保证数据逻辑独立性 当概念模式改变时,数据库管理员修改有关的外模式/概念模式映像,使外模式保持不变。 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像
概念模式/内模式映像定义了概念模式(全局逻辑结构)与内模式(存储结构)之间的对应关系。 例如,说明逻辑记录和字段在内部是如何表示的 数据库中概念模式/内模式映像是唯一的
概念模式/内模式映像的作用:保证数据物理独立性 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改概念模式/内模式映像,使概念模式保持不变 应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。
2.5数据库管理系统 DBMS
功能:
.1.数据定义DDL
2.数据操纵DML
3.优化和执行
4.数据安全和完整性
5.数据恢复和并发
6.数据字典
7.性能
用户角度看数据库系统结构:
单用户结构 主从式结构 分布式结构 客户/服务器结构 浏览器/应用服务器/数据库服务器结构
单用户数据库系统:
整个数据库系统(应用程序、DBMS、数据)装在一台计算机上,为一个用户独占,不同机器之间不能共享数据。
早期的最简单的数据库系统。
主从式结构的数据库系统:
数据库系统(应用程序、DBMS、数据)都集中存放在主机上,所有处理任务都由主机来完成 用户通过终端并发地存取数据库,共享数据资源
优点 :
易于管理、控制与维护。
缺点 :当终端用户数目增加到一定程度后,主机的任务会过分繁重,成为瓶颈,从而使系统性能下降。 系统的可靠性依赖主机,当主机出现故障时,整个系统都不能使用。
分布式结构的数据库系统:
数据库中的数据在逻辑上是一个整体,但物理地分布在计算机网络的不同结点上。 网络中的每个结点都可以独立处理本地数据库中的数据,执行局部应用; 同时也可以同时存取和处理多个异地数据库中的数据,执行全局应用。
优点: 适应了地理上分散的公司、团体和组织对于数据库应用的需求。
缺点: 数据的分布存放给数据的处理、管理与维护带来困难。 当用户需要经常访问远程数据时,系统效率会明显地受到网络传输的制约。
客户/服务器结构的数据库系统:
把DBMS功能和应用分开 网络中专门执行DBMS功能的计算机,称为数据库服务器(服务器) 安装DBMS的外围应用开发工具,用户的应用系统的,称为客户机 集中的服务器结构 一台数据库服务器,多台客户机 分布的服务器结构 在网络中有多台数据库服务器 分布的服务器结构是客户/服务器与分布式数据库的结合
优点:
客户端的用户请求被传送到数据库服务器,数据库服务器进行处理后,只将结果返回给用户,从而显著减少了数据传输量。 数据库更加开放 客户与服务器一般都能在多种不同的硬件和软件平台上运行 可以使用不同厂商的数据库应用开发工具。
缺点:
胖客户”问题: 系统安装复杂,工作量大。 应用维护困难,难于保密,造成安全性差。 相同的应用程序要重复安装在每一台客户机上,从系统总体来看,大大浪费了系统资源。 系统规模达到数百数千台客户机,它们的硬件配置、 操作系统又常常不同,要为每一个客户机安装应用程 序和相应的工具模块,其安装维护代价便不可接受了。
浏览器/应用服务器/数据库服务器结构:
客户端: 浏览器软件、用户界面、浏览器的界面统一,广大用户容易掌握,大大减少了培训时间与费用。 服务器端分为两部分: Web服务器、应用服务器 数据库服务器等 大大减少了系统开发和维护代价,能够支持数万甚至更多的用户

浙公网安备 33010602011771号