2024-10-18
软件设计师
0
请注意,本文编写于 251 天前,最后修改于 251 天前,其中某些信息可能已经过时。

目录

数据库模式
数据库设计
数据库设计过程
E-R模型
关系代数
规范化理论
函数依赖
价值与用途
范式(必考)
模式分解
数据库并发控制
数据库完整性约束
数据库安全
数据备份与恢复
数据仓库与数据挖掘
反规范化技术
大数据

数据库模式

三级模式 - 两级映射

image.png

数据库设计

数据库设计过程

image.png

E-R模型

image.png

集成的方法:

  • 多个局部E-R图一次集成
  • 逐步集成,用累加的方式一次集成两个局部E-R图

集成产生的冲突及解决办法:

  • 属性冲突:包括属性域冲突和属性取值冲突
  • 命名冲突:包括同名异义和异名同义
  • 结构冲突:包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同

E-R模型转关系模式:

  • 一个实体型转换为一个关系模式
    • 一对一、一对多:联系可以转成一个关系模式,也可以合并进多
    • 多对多:联系必须转成一个关系模式
  • 三个以上实体间的一个多元联系

image.png

关系代数

  • 笛卡尔积
  • 投影
  • 选择
  • 联接

规范化理论

函数依赖

设R(U)是属性U上的一个关系模式,X和Y是U的子集,r为R的任一关系,如果对于r中的任意两个元组u,v,只要有u[X]=v[X],就有u[Y]=v[Y],则称X函数决定Y,或称Y函数依赖于X,记为X→Y

image.png

价值与用途

非规范化的关系模式,可能存在数据冗余、更新异常、插入异常、删除异常等问题

image.png

例:学号能确定性别,学号和姓名的组合键也能确定性别,则学号和姓名的组合键为超键,但不是候选键,消除多余属性后,学号为候选键

候选键可以有多个,主键只有一个

求候选键

image.png

image.png

范式(必考)

结合函数依赖和候选键的求解学习

image.png

规范化程度越高,数据密度越小

第一范式:所有域只包含原子值,即每个分量都是不可再分数据项

image.png

第二范式:第一范式,且每一个非主属性完全依赖主键(不存在部份依赖),带来的问题:数据冗余、更新异常、插入异常、删除异常,解决方法:把部份依赖提取出来,形成新的关系模式

image.png

主属性:SNO,CNO,非主属性:GRADE,CREDIT

第三范式:第一范式,且没有非主属性传递依赖

image.png

BC范式:设R是一个关系模式,F是它的依赖集,R属于BCNF当且仅当其F中每个依赖的决定因素必定包含R的某个候选码

image.png

存在函数依赖:SJ→T,T→J,SJ是候选键,但T不是候选键,所以该关系模式没有达到BC范式的要求

例题

image.png

模式分解

image.png

image.png

表格法:

image.png

image.png

公式法(局限性较强,只适合于一分为二的情况)进行集合运算:

image.png

数据库并发控制

image.png

image.png

  • 一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放,可防止丢失修改
  • 二级封锁协议:一级封锁协议加上事务T在读取数据R之前先对其加S锁,读完后即可释放S锁,可防止丢失修改,可防止读“脏”数据
  • 三级封锁协议:一级封锁协议加上事务T在读取数据R之前先对其加S锁,直到事务结束才释放。可防止丢失修改、读“脏”数据和数据重复读
  • 两段锁协议:可串行化的,可能发生死锁

数据库完整性约束

  • 实体完整性约束(主键)
  • 参照完整性约束(外键)
  • 用户自定义完整性约束

提高数据可靠性的一种机制,只能应对简单情况

应对复杂情况:触发器,可以编写脚本

数据库安全

措施说明
用户标识和鉴定最外层的安全保护措施,可以使用用户账户、口令及随机数检验等方式
存取控制对用户进行授权,包括操作类型(如查找、插入、删除、修改等动作)和数据对象(主要是数据范围)的权限
密码存储和传输对远程终端信息用密码传输
视图的保护对视图进行授权
审计使用一个专用文件或数据库,自动将用户对数据库的所有操作记录下来

数据备份与恢复

  • 冷备份:静态备份,将数据库正常关闭,在停止状态下将数据库文件全部备份(复制)下来(操作较简单)
  • 热备份:动态备份,利用备份软件在数据库正常运行的状态下将数据库中的数据文件备份出来(灵活度高一些,较复杂,容错率低)

image.png

  • 完全备份:备份所有数据
  • 差量备份:仅备份上一次完全备份之后变化的数据
  • 增量备份:备份上一次备份之后变化的数据

image.png

image.png

数据仓库与数据挖掘

image.png

image.png

反规范化技术

image.png

大数据

image.png

image.png

本文作者:Morales

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 License 许可协议。转载请注明出处!