分布式数据库系统设计PPT课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
R2 = loc=Sb(E)
2021/3/7
12
2 自顶向下设计DDB 2.2 数据的分片设计
基本水平分片
• 若 R = {R1, R2, …, Rn}, 则
– 完整性 对于每一个元组 tR, RiR 使得 tRi
– 不相交性 对tRi, Rj 使得 tRj, i j
– 可重构性 操作是∪ (可以忽略, 因为完整性就蕴含着)
控制数据适当冗余
维护数据一致性开销增加
各站点可以分担整个工作任务
工作负荷分布
本地性降低
存储能力和费用
2021/Leabharlann Baidu/7
6
1 分布式数据库设计概述 1.4 DDBS设计方法
自顶向下方法(重构法)
DDBS 设计方法
自底向上方法(组合法)
混合方法
2021/3/7
7
2 自顶向下设计DDB 2.1 步骤和内容
概念设计
全局概念模式
2021反/3馈/7
需求分析
系统需求
用户输入 视图集成
访问模式
分布设计
局部概念模式
物理设计
物理模式
观察与监视
自顶向下设计过程
视图设计
外部模式定义
用户 输入
反馈
8
2 自顶向下设计DDB 2.2 数据的分片设计
分片原则
• 假若有全局关系R 被分片为子关系(片段)集合
R = {R1, R2, …, Rn}, 则 R满足 – 完整性
分片和分布
各个应用的原发站点
DDBS设计
相关应用需求
各个应用在每个站点的激活频率
应用设计
各个应用对要求访问数据对象的 访问次数、类型和统计分布
2021/3/7
5
1 分布式数据库设计概述 1.3 DDBS设计目标
尽量减少通信次数和通信量,90/10准则
DDBS 设计目标
本地性或近地性
分片和分布方案(本地和远程访问次数)择优 冗余增加了可靠性、可用性,提高了效率
A<10, A>5, Loc = Sa, Loc = Sb
• 下一步: - 生成 “小项” 谓词
- 消除无用谓词
• 给定简单谓词集 Pr= { p1, p2,.. pn }, 则“小项”谓 词(minterm predicate)形式:
– P={ DEPT=1} (不是完整的) – P={DEPT=1, JOB=‘P’} (是完整的、最小的) – P={DEPT=1, JOB=‘P’, SAL>500} (完整的,不是
最小的)
2021/3/7
14
2 自顶向下设计DDB 2.2 数据的分片设计
基本水平分片
如何保证分片原则
• “手工”检查!
2021/3/7
站点Sa
F
e# NM Loc Sal
7 Sally Sb 2500
..
站点 Sb
11
2 自顶向下设计DDB 2.2 数据的分片设计
基本水平分片
• 基本水平分片
以关系自身的属性性质为基础,执行“选 择”操作,将关系分割成若干个不相交的 片段。
R = { R1, R2 }
R1 = loc=Sa(E)
R = ∪{R1, R2, …, Rn}
• P = {p1, p2, …, pn}是一简单谓词集合,为保证分片 的正确性,P必须是:
– 完整的:同一分片中的任意两个元组被应用同样概率 访问。
– 最小的:集合P中的所有谓词与应用密切相关。(不同分 片中的元组被访问的概率是不同的)
– 具有完整性和最小性不是必要条件, 但是对于简化分配
3. 从总体设计做 起,包括 LDBS,重新建 立一个DDBS
4. 可有效解决数 据一致性、完 整性和可靠性 问题。
通常是同构异 质或同构同质 DDB20S21/3/7
用户1
用户2 分布式数据库管理系统
网络
用户n
4
1 分布式数据库设计概述 1.2 DDBS设计内容
DDB设计
全局模式设计 局部数据库设计
3. 解决数据 的一致性、 完整性和 可靠性
4. 难度较大
通常是异 构或者同 构异质 DDBS
用户1 DBMS1
2021/3/7
用户2 分布式协调管理系统 DBMS2
网络
用户n DBMSm
3
1 分布式数据库设计概述
1.1 DDBS创建方法
重构法
1. 根据实现环境 和用户需求
2. 按照DDBS的 设计思想和方 法
Qa Sa 2021/3/7
Sb Qb
10
2 自顶向下设计DDB 2.2 数据的分片设计
举例
e# NM Loc Sal E 5 Joe Sa 1000
7 Sally Sb 2500 8 Tom Sa 500
..
.. ..
e# NM Loc Sal
5 Joe Sa 1000 8 Tom Sa 500
e.g., R1 = loc=‘Sa’ E ; R2 = loc=‘Sb’ E
• 生成具有满足分段原则的限定谓词
2021/3/7
15
2 自顶向下设计DDB 2.2 数据的分片设计
谓词生成举例
• 设有关系 E (e#,name,Loc,sal,A,…), 查询使用的简 单谓词(Ai Value)是:
?x R, RiR 必有 xRi ,i=1,2,…,n – 可重构性
? 存在函数 g 使得R = g(R1, R2, …, Rn) 即,R=∪ Ri (水平分片),R=∞ Ri (垂直分片) – 不相交性
Ri ∩ Rj =空集,i≠j,i,j=1,2,…,n(水平分片)
Ri ∩ Rj =主键属性,i,j=1,2,…,n(垂直分片)
2021/3/7
9
2 自顶向下设计DDB 2.2 数据的分片设计
举例
职工关系 E (e#, name, loc, sal,…)
查询:
Qa: select *
Qb: select *
from E
from E
where loc=Sa
where loc=Sb
and…
and ...
两个站点 : Sa, Sb
2021/3/7
1
第2章 分布式数据库系统设计
1. 分布式数据库系统设计概述 2. 自顶向下设计分布式数据库 3. DATAID-D方法 4. 实例研究:飞机订票系统 5. 自底向上设计分布式数据库
2021/3/7
2
1 分布式数据库设计概述
1.1 创建方法
组合法
1. 剖析网络 功能
2. 剖析原有 数据库系 统
2021/3/问7 题有好处
13
2 自顶向下设计DDB 2.2 数据的分片设计
基本水平分片
• 例子
EMP ( E#, NAME, DEPT, JOB, SAL, TEL, …)
DEPT={1,2} JOB={‘P’, ‘-P’} 假定,应用经常查询的内容是属于部门1且是程序员
的职员。
• 则可能有的水平分段限定