课程链接:015_数据库系统的用户接口以及SQL语言(一)_哔哩哔哩_bilibili
1、分类
DDB:物理上分散,逻辑上集中
特点:
- 有统一的全局模式
- 靠分布式数据库管理系统实现 DDBMS
- 分布在网络的不同节点上
优点:
- 具有局部自治性
- 灵活性高(可以在多个节点上有相同副本)
- 系统成本低(方便加节点)
- 高效率(满足本地的日常存取需求90%,10%通过其他网络)
- 并行性
缺点:
- 难以集成多个已有的数据库(分布式数据库最好从头开始)
- 设计、实现、应用、维护复杂
分布式数据库存在的问题:
- 查询优化,减少网上的数据传输量
- 并发控制,考虑网络的全局冲突
- 恢复机制,数据如何保持一致(转账)(故障组合)
- 数据分布问题,如何切割数据
FDBS:物理上分散,逻辑上分散 (联邦式数据库)
- 多个已有数据库做集成
2、数据分布
数据分布策略
- 集中式:分布式系统,数据集中存放(特例)
- 划分式:数据切割,存在不同的节点,节点之间数据不重复
- 全复制:网络每个节点数据库都是完整数据(适合只读数据库,更新要全部更新)
- 混合式:上面方式的混合(按照应用需要放数据,可以重复、可以划分)
数据分布单元
- 关系单元(粒度粗)
- 裂片单位
- 水平分割(元组)
- 垂直分割(属性)
- 混合方式:水平+垂直
数据分割准则
- 保证数据完整性
- 可重构性
- 不相交性(水平分割时需要满足)
数据分布带来的问题
(前三个是DDBMS问题,最后是数据库设计问题)
- 多副本一致性问题(要考虑节点故障情况)
- 分布一致性问题(保证裂片的不相交)
- 查询语句转换(把用户查询转化成对裂片查询,副本选择)
- 数据库分布方案、裂片设计
3、联邦式数据库
- 采用松耦合方法,相互独立、自治,允许参与耦合的数据库都保持自己的数据模式不变,
- 没有统一的全局模式
- 成员之间规定相互之间的输入、输出模式
- FS是联邦模式数据映射,包括输入输出模式 FS=CS+IS
- CS 是输出模式,IS 是输入模式
- ES 是其他数据库返回回来的数据,需要转化为IS
4、DDBMS的查询优化
- 优化目标:减少网络上的数据传输
- 代数优化:关系运算(与关系数据库一样)
- 操作优化:索引、物理存储结构,还要做转换(针对物理裂片),得到全局执行计划
例子:R2数据量少,那么把R2传送到R1
5、DDBMS的恢复机制
- 保证ACID,事务准则 2pc,要么同时提交,要么同时上报
6、DDBMS的并发控制
- 单个节点不能冲突,系统全局也不能冲突
- 全局死锁问题