【高级系统架构师】第三章 数据库系统

数据库系统 在软考中,一般有3-5分,还有下午的案例分析也有12分。这个章节难度很大,还需要懂点基本的数学知识。

主要考点: 数据库模式、ER模型、关系代数(最难)、规范化理论,数据库完整性约束、分布式数据库、数据仓库和数据挖掘

思维导图如下:

 

 

1、抽象级: 用户数据库(外模式)、概念级数据库(概念模式),物理级数据库(内模式)

个层次 外模式 对应视图
概念模式 数据库中的关系表
内模式 涉及存储结构,有索引和文件
两层映像 概念模式-内模式 存储结构变化,不用修改应用程序
外模式-概念模式 关系表变化,不用修改应用程序
两个独立性 逻辑独立性 数据库的视图和基本表之间
物理独立性 基本表与存储文件之间

2、ER模型(下午的案例分析必考)

ER图来自需求分析,从数据库设计角度出发,主要是概念阶段设计。

分为三个要素:实体(矩形框,标注实体名称)、属性(椭圆形,与实体连接起来),实体之间的联系(菱形框表示,框内标注联系名和联系类型)、

本章节会重点考如何解决冲突和实现关系。 要注意一点:有始有终,确保流程走完

3、数据库设计

数据库设计 需求分析 数据字典、数据流程图、需求说明书
概念结构设计 ER模型
逻辑结构设计 依据三大范式,设计关系模式
物理设计 结合数据库管理系统(mysql)和硬件,设计出数据库物理模式

3、关系代数(这个章节,最难,每次都选C)

S1∪S2 合并两个关系模式并去重列
S1∩S2 取S1和S2两个关系模式都有的部分
S1⁻S2 在S1中但不在S2中。把S1含有S2的部分给删除
笛卡尔 S1×S2 属性列数s1+s2 穷举出来
投影 π3,1(S1) 做列的投影
选择  δ1=4(R)  根据条件进行筛选
自然链接 R⋈S 找出S1和S2的公共字段,根据相同字段做等值连接,同时去掉重复的列

 

4、规范化

函数依赖 指定X,一定有唯一的Y与之对应。比如学号可以唯一确定姓名,姓名不可以唯一确定学号
部分函数依赖 某一属性依赖主键中一部分的时候就是部分函数依赖。
传递函数依赖 A确定B,B确定C,从而A可以确定C。就像学号可以确定系号,系号又可以确定系名,于是学号可以确定系名。
超键 唯一标识元祖。它的要求比候选键和主键更宽松。
候选键 在超键基础上消除冗余属性。比如学号和姓名的组合键可以唯一标识元祖,但它有冗余属性所以不是候选键而是超键。
在有向图中,从入度为零的节点出发可以遍历到所有的结点的话,那么我们就说这个入度为零的结点是候选键。
主键 学号和身份证号都是候选键,任选其一就是主键,而学号加身份证号作主键是不合适的。
国家总统候选人有多个,但最后的总统只可能有一个。
外键 是其他关系的主键。关系表需要通过连接去判断,所以外键是必须要有的。
第一范式 只包含原子值。属性都是不可再分的数据项。比如把高级名称拆分为教授和副教授就是第一范式的应用。 
第二范式 在第一范式的基础上,每一个非主属性完全依赖于主键。消除非主属性对候选键的部分依赖。
存在部分依赖会有数据冗余的问题,还有插入和删除异常的问题。
第三范式 消除非主属性对候选键的传递依赖
BC范式 消除主属性对候选键的部分和传递依赖
每个属性都不部分依赖于候选键也不传递依赖于候选键,那么称R是BC范式

R属于BCNF当且仅当其F中每个依赖的决定因素必定包含R的某个候选码。

派生属性 单价和数量可以确定总价,这个就是派生属性的应用。还有出生年月和年龄之间就有派生关系。
多值属性 一张关系表中家庭成员有多个,它就是多值属性。

待续。。。。 

posted on 2020-08-17 11:15  ~紫鱼~  阅读(266)  评论(0编辑  收藏  举报