软考知识备忘
数据库设计
分布透明性指用户不必关心教据的逻辑分片,不必关心数据存储的物理位置分配细节,也不必关心局部场地上数据库的数据模型。
分片透明性是分布透明性的最高层次。
位置透明性指用户或应用程序应当了解分片情况,但不必了解片段的存储场地。
逻辑透明性是指用户或应用程序应当了解分片及各片断存储的场地,但不必了解局部场地上使用的是何种数据模型。
存储过程与视图的主要区别是,视图主要用于数据查询展示,存储过程可用于数据的处理,可接收参数。
完全备份: 备份所有数据。
差量备份: 仅备份上一次完全备份之后变化的数据。
增量备份: 备份上一次备份之后变化的数据。
数据库设计过程
需求分析阶段产生数据流图、数据字典
概念结构设计阶段产生E-R图
逻辑结构设计阶段进行关系规范化
分布式数据库系统
全局概念模式定义了分布式数据库中数据的整体逻辑结构,数据就如同根本没有分布一样
E-R模型集成冲突:
属性冲突: 包括属性域冲突和属性取值冲突。
命名冲突: 包括同名异义和异名同义。
结构冲突: 包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同。
数据仓库包括数据源、数据的存储与管理、OLAP 服务器与各种报表工具、查询工具、数据分析工具、数据挖掘工具及各种基于数据仓库或数据集市的应用开发工具。
X→Y 表示X 函数决定Y,或者Y函数依赖于X。
事务特性实现:
原子性:影子拷贝(浅拷贝)
持久性:影子拷贝
隔离性:两阶段锁协议(可能会导致死锁)
一致性:完整性约束
基于日志的延迟修改技术:
将所有对数据库进行的修改操作记录到日志中,将一个事务的所有写操作延迟到事务提交后才执行。
需要记录:事务开始和结束时间,数据项被修改后的新值,无需修改前旧值。
写操作在事务提交前没有生效,如果事务在提交前崩溃,系统可以直接丢弃事务的所有记录,而不需要对数据库进行回滚或还原。
由于写操作是延迟的,若事务中途失败,只需忽略该事务的日志记录,不需要撤销任何写入操作,因此不需要用旧值进行恢复。
若故障发生前事务已经提交,则进行重做,故障发生时未完成的事务进行撤销。
对于分布式事务,统一由事务协调器控制各节点进行事务操作。
候选码
如何求出候选码:
- 将关系模式的函数依赖关系用“有向图”的方式表示
- 找入度为0的属性,并以该属性集合为起点,尝试遍历有向图,若能正常遍历图中所有结点,则该属性集即为关系模式的候选键
- 若入度为0的属性集不能遍历图中所有结点,则需要尝试性的将一些中间结点(既有入度,也有出度的结点)并入入度为0的属性集中,直至该集合能遍历所有结点,集合为候选键。
范式
1NF 属性不可分
2NF 消除非主属性对候选键的部分依赖
3NF 消除非主属性对候选键的传递依赖
BC NF 消除主属性对候选键的部分和传递依赖
关系代数:
投影:选择一个关系中指定的列 Π \Pi Π
选择:选择一个关系中指定的行 σ \sigma σ
自然连接:选出两个关系中具有相同属性的行并进行合并 ⋈ \Join ⋈
笛卡尔积:将两个关系中的每行配对连接 × \times ×
可靠性分析与设计
可用性关注的是系统是否能随时使用,即使故障发生时也有机制保持服务。
可靠性关注的是系统是否稳定、长时间无故障运行,从而减少故障发生的频率。