数据库模式:
概念模式即数据库中的数据逻辑结构,外模式即用户使用的数据逻辑结构,内模式即存储记录存储域的数据存储组织。
数据模型:
层次模型(1:n的关系),网状模型(m:n 的关系),关系模型(用表格结构表达实体集,用外键表示实体间联系),面向对象模型(用面向对象的观点来描述)
关系模型是目前数据库主要模型。
规范化理论:
函数依赖:由X能确定Y,则称Y依赖于X。
部分函数依赖:X的一部分能够确定Y;
传递函数依赖:X能确定Y,Y能确定Z,但Y不能确定X
键(码):超键: 唯一标识元组
候选键:也是唯一标识元组,但消除了超键中多余的属性。
求候选键的方法:有向图示法,入度为零的属性能遍历所有属性。没有入度为零的,找中间节点属性组合。
主键:候选键中的任一个
外键:其他实体的主键
范式(1NF,2NF,3NF,BCNF,4NF,5NF):关系模式派别准则
1NF:属性值都是不可分的原子值
2NF:消除非主属性对候选键的部分依赖 :每一个非键属性完全依赖主键(没有不完全依赖)
3NF:消除非主属性对候选键的传递依赖:实体中没有非主属性传递依赖于码时。
BCNF:消除主属性对候选键的传递依赖:设R是一个关系模式,F是它的依赖集,R属于BCNF当且仅当F中每个依赖的决定因素必定包含R的某个候选码。
(主属性:包含于任一一个候选键的属性)
模式分解:无损分解。表格法判断无损分解。
数据库控制:
ACID → A原子性 C一致性 I 隔离性 D持久性
并发性:并发产生的问题:丢失更新,不可重复读问题,脏数据
解决方案:并发控制→采用封锁技术
封锁类型:排他型封锁X,共享型封锁S
封锁协议:一级封锁协议,二级封锁协议,三级封锁协议,两段封锁协议(扩展阶段,收缩阶段)
备份与恢复;
安全性;
完整性:完整性控制
完整性约束:
实体完整性约束→任一属性不能为空,主键值不能重复。
参照完整性约束→外键的值为空或为对应关系主键值域。
用户定义完整性约束:用户定义值域。
触发器;
数据库性能;
数据库工程:
→需求分析
→概念结构设计(ER方法,实体联系,建立信息模型)
ER图包含三个要素:实体(矩形),属性(椭圆),实体间的联系(菱形)
→逻辑结构设计(数据模型,约束,关系模式:关系是元组的集合,关系模式要描述元组的集合,其中包括属性,属性来自于域,即属性与域的关系)
ER模型→ 关系模式的步骤:
1.把每个实体都转化为关系模式R(A,B) R是关系名, A、B是属性
2.实体中的属性即关系模式中的属性要求满足第一范式。
3.实体间联系的转换
1:1 一对一的情况 将两个实体转化为关系模式之后,然后把任意实体的主键和联系的属性放到另一个实习关系模式中
1:n 一对多的情况 将数量为1的实体主键放到n中
m:n 多对多的情况 把两个实体中的主键放到另一个关系模式中,即新建一个独立关系模式,新的关系模式中包含所有实体的主键。
→物理结构设计(存储结构,存储方法)
→应用程序设计(DBMS二次开发)
→运行维护
数据模型:确认核心实体→确认相关实体→确认关联和关系→确认属性→范式化→细节调整
数据仓库与传统数据库区别:
1.面向对象不同:数据库面向事务处理和应用,数据仓库面向主题
2.数据仓库是集成的,即对原有数据库中的数据进行采集、过滤、整理得到的。
3.数据仓库中数据更新少,长时间稳定
4.数据仓库中的数据是历史数据,时间期限长于数据库中的数据期限。
数据仓库架构:数据源 → 数据存储管理→OLAP服务器→前端工具
数据挖掘是在没有明确假设前提下去挖掘信息。
数据挖掘的常用技术;决策树,神经网络,遗传算法,关联规则挖掘算法
数据挖掘过程;问题定义→建立数据挖掘库→分析数据→调整数据→模型化→评价解释