软件设计师 -数据库基础
2023-10-27 00:07:26 0 举报
AI智能生成
软考-数据库基础部分
作者其他创作
大纲/内容
数据库三级结构模式
外模式
也称用户模式或子模式,是用户与数据库系统的接口,是用户用到的那部分数据的描述
概念模式
也称模式,是数据库中全部数据的整理逻辑结构的描述
内模式
也称存储模式,是数据库在物理存储方面的描述,定义所有内部记录类型,索引和文件的组织方式,以及数据控制方面的细节
逻辑独立性<br>
当模式改改变时,由数据库管理员对各个外模式/模式的映像做相应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性
物理独立性
当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应的改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。
数据模型
概念数据模型(实体-联系模型)
是按照用户的观点来对数据和信息建模,主要用于数据库设计。概念模型主要用实体-联系方法表示,也称E-R模型
基本数据模型(结构数据模型)
是按照计算机系统的观点来对数据和信息建模,主要用于DBMS的实现。基本数据模型是数据库系统的核心和基础。常用的基本数据模型有层次模型 ,网状模型,关系模型和面向对象模型。
包括
数据结构(静态)
数据操作(动态)
数据的约束条件
实体完整性
指实体的主属性不能为空
参照完整性
外键参照的完整性,若A关系中的某个属性参照B属性,那么关系A中B的外键属性要么为空,<br>要么必须出现在B关系的对应属性中
用户定义完整性
某一个具体应用所对应的数据必须满足一定的约束条件。
关系型数据库
关系
可以理解为一张二维表,每个关系都具有一个关系名,就是通常说的表名<br>
元组
可以理解为二维表中的一行,在数据库中经常被称为记录
属性
可以理解为二维表中的一列,在数据库中经常被称为字段
域
属性的取值范围,也就是数据库中某一列的取值限制
关键字
一组可以唯一标识元组的属性,数据库中常称为主键,由一个或多个列组成
关系模式
指对关系的描述。其格式为:关系名(属性1,属性2),在数据库中称为表结构;
函数依赖<br>
X函数确定Y,Y函数依赖于X,记作X->Y。X称为这个函数依赖的决定属性组,也成为决定因素
完全函数依赖<br>
部分函数依赖<br>
传递依赖
Armstrong 公理<br>
设关系式R(U,F),U是关系模式R的属性集,F是U上一组函数依赖,则有以下三条推理规则:
A1 自反律<br>
若Y∈X∈U,则X->Y所蕴含<br>
A2 增广律<br>
若X->Y为F所蕴含,且Z∈U,则XZ->YZ所蕴含<br>
A3 传递律
若X->Y, Y->Z为F所蕴含,则X->Z为F所蕴含<br>
合并规则
若 X->Y,X->Z,则X->YZ为F所蕴含<br>
伪传递规则
若X->Y,WY->Z,则XW->Z为F所蕴含<br>
分解规则
若X->Y,Z∈Y,则X->Z为F所蕴含<br>
键与属性
超键
包含主键及其它属性
主键
只包含主键
候选键
包含多个主键,选定一个,不含有多余属性
外键
如果关系模式R中的某些属性不是R的主键,而是关系模式S的主键,则这个属性集对模式R而言是外键
主属性与非主属性
包含在任何一个主键,称为主属性,否则为非主属性
全码
关系模式R(P,W,A)中,P是演奏者,W是作品,A是听众,该关系模式只有一个包含了全部属性的主键,是全码
规范化<br>
范式
第一范式
若关系模式R的每一个分量是不可再分的数据项,则关系模式R属于第一范式。
第二范式
若关系模式R∈1NF,且每一个非主属性完全依赖主键时,则关系式R是2NF;
第三范式
即当消除了非主属性对码的传递函数依赖,则称为3NF
BC范式
R属于BCNF当且仅当其F中每个依赖的决定因素必定包含R的某个候选键
反规范化
增加冗余列
增加派生列
重新组表
分割表
水平分割
根据一列或多列数据的值,把数据行 放在两个独立的表中
场景<br>
表很大,分割后提高查询效率<br>
表本身有独立性
需要把数据存放到多个介质上
垂直分隔
把主码和一些列放在一个表,然后把主码和另外的列放到另一个表中。一些表中某些列常用,另外一些不常用,可以使用垂直分隔。
数据库设计
规划阶段
建立数据的必要性,可行性
需求分析
收集需求,理解需求,需求规格说明书,数据字典
需求分析的目的是通过调查研究,了解用户的数据和处理要求,并按照一定格式整理成需求规格说明书
数据库的元数据交由数据字典来进行管理
数据字典内容
数据项
数据流
数据存储
数据加工(处理过程)
加工也成为“小说明”,常用的加工描述方法有结构化语言,判定表和判定树
概念设计
建立概念模型,E-R模型
其任务是在需求分析阶段产生的需求说明书的基础上,按照特定的方法将它们抽象为一个不依赖于任何DBMS的数据模型,即概念模型
逻辑设计
建立逻辑模型,关系模式
逻辑设计也称为逻辑结构设计,其任务是将概念模型转化为某个特定的DBMS上的逻辑模型(层次模型,网状模型,关系模型)
E-R向关系模式转换规则
E-R的实体转换为关系
E-R图的属性转换为关系的属性
E-R图的关键字,转换为关系的关键字
属性转换
复合属性转换
将每个分量属性作为复合属性所在实体的属性
将复合属性本身作为所在实体的属性
多值属性转换
将多值属性与所在实体的主键一起组成一个新的关系
将多值属性提升为一个实体,通常为弱实体
派生属性
因为派生属性可以由其他属性计算得到,因此,在转换成关系时,通常不转化派生属性
BLOB 型属性
将BLOB属性与关系的主键独立为一个关系模式
联系属性转换
1:1联系
一个1:1联系可以转化为一个独立的关系模式
或者也可以与任意一端对应的关系模式合并
1:n联系
一个1:n联系可以转化为一个独立的关系模式
与n端对应的关系模式合并
N:m联系<br>
一个N;M 可以转化为一个独立的关系模式
多元联系
一个多元联系可以转化为一个独立的关系模式
物理设计
建立物理模型 依赖于DBMS
设计存储记录结构,包括记录的组成,数据项的长度和类型 ,以及逻辑记录到存储记录的映射
确定数据存储安排
设计访问方法,为存储在物理设备上的数据提供存储和检索的能力
进行完整性和安全性的分析与设计
数据库程序设计
数据库事务<br>
四大特性
原子性
操作序列要么全做,要么全不做
一致性
数据库从一个一致性状态变到另一个一致性状态
隔离性
不能被其他事务干扰
持续性
一旦提交就是永久性的
事务引发的问题
丢失更新
丢失更新是指在完全未隔离事务的情况下,两个事务更新同一条数据资源,某一事务完成,另一事务异常终止,回滚造成第一个完成的更新也同时丢失。
不可重复读
不可重复读是指在一个事务内,多次读取同一数据,由于其他事务的修改,导致第一次读取的结果与第二次、第三次等后续读取的结果不一致
读“脏”数据
读脏数据是指在一个事务内,另一个事务修改了数据并且未提交,第一个事务读取了这些未提交的数据,导致第一个事务读取到了脏数据。
锁
排他型锁(X封锁)<br>
如果事务T对A 实现了X封锁,那么只允许事务T读取和修改数据A,其他事务要等事务T解除X封锁后,才能对A实现任何类型的封锁
共享型锁(S封锁)<br>
如果事务T 对数据A 实现了S封锁,那么允许事务T 读取数据A,但不能修改数据A,在所有S封锁解除之前绝不允许任何事务对数据A 实现X 封锁
分布式数据库<br>
分布式数据库优点
坚固性好
由于分布式数据库是由多个位置上的多台计算机构成的,在个别节点或个别通信链路发生故障时,<br>它仍然可以降低级别继续工作,如果采用冗余技术,还可以获得一定的容错能力。因此系统坚固性好,可靠性和可用性高。
可扩充性好
可根据发展的需要增减结点,或对系统重新配置,这比用一个更大的系统替代一个已有集中式数据库要容易的多。
可改善性能
在分布式数据库中可按就近分布,合理地几余的原则来分布各结点上的数据,构造分布式数据库,使大部分数据可以就近访问,<br>避免了集中式数据库中的瓶颈问题,减少了系统的响应时间,提高了系统的效率,而且也降低了通信费用。
自治性好
数据可以分散管理,统一协调,即系统中各结点的数据操纵和相互作用是高度自治的,不存在主从控制,因此,分布式数据库较好地满足了一个单位中各部门希望拥有自己的数据,管理自己的数据,同时又想共享其他部门有关数据的要求。
特性
分布性<br>
统一性
透明性
分片透明性
是分布透明性的最高层次。用户或应用程序只对全局关系进行操作而不必考虑数据的分片
位置透明性
用户或应用程序应当了解分片的情况,但不必了解分片的存储场地
局部数据模型(逻辑透明)
了解分片即各片段的的存储场地,但不必了解局部场地上使用的是何种数据模型。
数据仓库<br>
数据仓库是一个面向主题的,集成的,相对稳定的,反应历史变化的数据集合,用于支持管理决策。
结构
数据源
数据的存储与管理
是整个数据仓库系统的核心。数据仓库的真正关键是数据的存储和管理
OLAP 服务器
对分析需要的数据进行有效集成,按多维模型予以组织,以便进行多角度,多层次的分析,并发现趋势
多维度分析是OLAP的典型应用
分类
ROLAP
基本数据和聚合数据均存放在RDBMS中
MOLAP
基本数据和聚合数据均放于多维数据库中
HOLAP
基本数据存放于RDBMS中,聚合数据存放于多维数据库中
前端工具
四大特点<br>
面向主题<br>
数据按主题组织
集成的
消除了源数据中的不一致性,提供整个企业的一致性全局信息
相对稳定的
主要进行查询操作,只有少量的修改和删除操作
反应历史变化
记录了企业从过去某一时刻到当前各个阶段的信息,可对发展历史和未来趋势做定量分析和预测。
数据处理
联机事务处理 OLTP
OLTP 是传统的关系型数据库的主要应用,主要是基本的,日常的事务处理。
OLTP 系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,并发操作
联机分析处理 OLAP
OLAP 是数据仓库系统的主要应用,支持复杂的分析操作,侧重于决策支持,提供直观易懂的查询结果
OLAP 系统则强调数据分析,强调SQL 执行市场,强调磁盘I/O,分区等
0 条评论
下一页