收藏 分享(赏)

分布式数据库系统及其应用_分布式数据库系统设计.ppt

上传人:清凉的夏天 文档编号:5807082 上传时间:2022-06-26 格式:PPT 页数:101 大小:1.97MB
下载 相关 举报
分布式数据库系统及其应用_分布式数据库系统设计.ppt_第1页
第1页 / 共101页
分布式数据库系统及其应用_分布式数据库系统设计.ppt_第2页
第2页 / 共101页
分布式数据库系统及其应用_分布式数据库系统设计.ppt_第3页
第3页 / 共101页
分布式数据库系统及其应用_分布式数据库系统设计.ppt_第4页
第4页 / 共101页
分布式数据库系统及其应用_分布式数据库系统设计.ppt_第5页
第5页 / 共101页
亲,该文档总共101页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1.分布式数据库系统设计概述2.自顶向下设计分布式数据库3.DATAID-D方法4.实例研究:飞机订票系统自底向上设计分布式数据库分布式数据库系统设计 第2章分布式数据库设计概述1创建方法1.1 组合法 1.剖析网络功能2.剖析原有数据库系统3.解决数据的一致性、完整性和可靠性4.难度较大 通常是异构或者同构异质DDBS用户1用户2用户n分布式协调管理系统DBMS1DBMS2DBMSm 网络分布式数据库设计概述1DDBS创建方法1.1 重构法 1.根据实现环境和用户需求2.按照DDBS的设计思想和方法3.从总体设计做起,包括LDBS,重新建立一个DDBS4.可有效解决数据一致性、完整性和可靠性

2、问题。 通常是同构异质或同构同质DDBS用户1用户2用户n分布式数据库管理系统 网络1.2 DDBS设计内容1 分布式数据库设计概述DDBS设计DDB设计应用设计全局模式设计局部数据库设计相关应用需求各个应用的原发站点各个应用在每个站点的激活频率各个应用对要求访问数据对象的访问次数、类型和统计分布分片和分布1.3 DDBS设计目标1 分布式数据库设计概述DDBS设计目标本地性或近地性存储能力和费用尽量减少通信次数和通信量,90/10准则分片和分布方案(本地和远程访问次数)择优控制数据适当冗余冗余增加了可靠性、可用性,提高了效率维护数据一致性开销增加工作负荷分布各站点可以分担整个工作任务本地性降

3、低1.4 DDBS设计方法1 分布式数据库设计概述DDBS设计方法自顶向下方法(重构法)混合方法自底向上方法(组合法)2.1 步骤和内容2 自顶向下设计DDB需求分析概念设计视图设计分布设计物理设计观察与监视系统需求全局概念模式访问模式外部模式定义局部概念模式物理模式用户输入视图集成用户输入反馈反馈自顶向下设计过程 假若有全局关系R 被分片为子关系(片段)集合 R = R1, R2, , Rn, 则 R满足 完整性?x R, RiR 必有 xRi ,i=1,2,n 可重构性? 存在函数 g 使得R = g(R1, R2, , Rn)即,R= Ri (水平分片),R= Ri (垂直分片) 不相交

4、性Ri Rj =空集,ij,i,j=1,2,n(水平分片)Ri Rj =主键属性,i,j=1,2,n(垂直分片) 2.2 数据的分片设计2 自顶向下设计DDB 分片原则 职工关系 E (e#, name, loc, sal,) 查询: Qa: select * Qb: select *from E from Ewhere loc=Sa where loc=Sband and .两个站点 : Sa, Sb Qa QbSaSb2.2 数据的分片设计2 自顶向下设计DDB 举例 e# NM Loc Sal E578Sa 1000SallySb 2500TomSa 500Joee# NM Loc Sa

5、le# NM Loc Sal58Sa 1000TomSa 500Joe7Sb 2500Sally.F站点Sa站点 Sb2.2 数据的分片设计2 自顶向下设计DDB 举例 基本水平分片 以关系自身的属性性质为基础,执行“选择”操作,将关系分割成若干个不相交的片段。 R = R1, R2 R1 = loc=Sa(E) R2 = loc=Sb(E)2.2 数据的分片设计2 自顶向下设计DDB 基本水平分片 若 R = R1, R2, , Rn, 则 完整性 对于每一个元组 tR, RiR 使得 tRi 不相交性 对tRi, Rj 使得 tRj, i j 可重构性 操作是 (可以忽略, 因为完整性就蕴

6、含着) R = R1, R2, , Rn P = p1, p2, , pn是一简单谓词集合,为保证分片的正确性,P必须是: 完整的:同一分片中的任意两个元组被应用同样概率访问。 最小的:集合P中的所有谓词与应用密切相关。(不同分片中的元组被访问的概率是不同的) 具有完整性和最小性不是必要条件, 但是对于简化分配问题有好处2.2 数据的分片设计2 自顶向下设计DDB 基本水平分片 例子EMP ( E#, NAME, DEPT, JOB, SAL, TEL, ) DEPT=1,2 JOB=P, -P假定,应用经常查询的内容是属于部门1且是程序员的职员。 则可能有的水平分段限定 P= DEPT=1

7、(不是完整的) P=DEPT=1, JOB=P (是完整的、最小的) P=DEPT=1, JOB=P, SAL500 (完整的,不是最小的)2.2 数据的分片设计2 自顶向下设计DDB 基本水平分片 如何保证分片原则 “手工”检查!e.g., R1 = loc=Sa E ; R2 = loc=Sb E 生成具有满足分段原则的限定谓词2.2 数据的分片设计2 自顶向下设计DDB 基本水平分片 设有关系 E (e#,name,Loc,sal,A,), 查询使用的简单谓词(Ai Value)是: A5, Loc = Sa, Loc = Sb 下一步: - 生成 “小项” 谓词- 消除无用谓词 给定简

8、单谓词集 Pr= p1, p2,. pn , 则“小项”谓词(minterm predicate)形式:p1* p2* pn* 这里 pk* 是 pk 或是 pk2.2 数据的分片设计2 自顶向下设计DDB 谓词生成举例(1) A5 Loc=SA Loc=SB(2) A5 Loc=SA (Loc=SB)(3) A5 (Loc=SA) Loc=SB(4) A5 (Loc=SA) (Loc=SB)(5) A5) Loc=SA Loc=SB(6) A5) Loc=SA (Loc=SB)(7) A5) (Loc=SA) Loc=SB(8) A5) (Loc=SA) (Loc=SB)2.2 数据的分片设

9、计2 自顶向下设计DDB小项谓词选择 (9) (A5 Loc=SA Loc=SB(10) (A5 Loc=SA (Loc=SB)(11) (A5 (Loc=SA) Loc=SB(12) (A5 (Loc=SA) (Loc=SB)(13) (A5) Loc=SA Loc=SB(14) (A5) Loc=SA (Loc=SB)(15) (A5) (Loc=SA) Loc=SB(16) (A5) (Loc=SA) (Loc=SB)2.2 数据的分片设计2 自顶向下设计DDB小项谓词选择R2:5 A 10 Loc=SA R3:5 A 10 Loc=SB R6:A 5 Loc=SA R7:A 5 Loc

10、=SB R10:A 10 Loc=SA R11:A 10 Loc=SB 分片结果2.2 数据的分片设计2 自顶向下设计DDB注:无用段的消除依赖于应用的语义e.g.: 如果 LOC 可以是 SA, SB, 则最终分段集合应该加上R4:5 A 10 Loc SA Loc SB R8:A 5 Loc SA Loc SB R12:A 10 Loc SA Loc SB2.2 数据的分片设计2 自顶向下设计DDB 小项选择率(minterm selectivity) 对某一给定小项谓词用户查询可能选择到的元组数 访问频率(Access frequency)用户应用访问数据的频率 小项访问频率可以通过用户

11、查询频率获得2.2 数据的分片设计2 自顶向下设计DDB分片数量信息 例子 E(#, NM, LOC, SAL,) 有查询应用Qa: select *Qb: select * from Efrom E where LOC=Sa where LOC=Sb and and .2.2 数据的分片设计2 自顶向下设计DDB如何选择小项谓词举例(1) Pr = R1 = E (2) Pr = LOC=Sa, LOC=Sb R2= loc=Sa E, loc=Sb E (3) Pr = LOC=Sa, LOC=Sb, Sal1000 R3= loc=Sa sal1000 E, loc=Sa sal1000

12、 E, loc=Sb sal1000E, loc=Sb sal1000 E 三种选择2.2 数据的分片设计2 自顶向下设计DDBLoc=Sa sal 1000Loc=Sa sal 1000Loc=Sb sal 1000Loc=Sb sal 1000R1R3R2Qa: Select loc = Sa .Qb: Select loc = Sb .R2 是好的( R1 , R3不好 ) 2.2 数据的分片设计2 自顶向下设计DDB图示Loc=Sa sal 1000Loc=Sa sal 1000Loc=Sb sal 1000Loc=Sb sal 1000R1Qa: Select loc = Sa .Q

13、b: Select loc = Sb .此处元组有较高的选择概率此处元组选择概率较低分段内元组选择概率不等因此 R1 不好.2.2 数据的分片设计2 自顶向下设计DDB理由Loc=Sa sal 1000Loc=Sa sal 1000Loc=Sb sal R1在Site1, R2在Site2, R3在Site3. B R1和R2在Site1, R2和R3在Site3.另已知有如下应用(所有应用的频率相同) A1: 在Site1上发出, 读5个 R1记录, 5个 R2记录 A2: 在Site3上发出, 读5个R3记录 , 5个R2记录 A3: 在Site2上发出, 读10个R2记录.问: 1. 如

14、果以本地应用为主要设计目标, 那个分配较优? 2. 假定A3改为要修改10个R2记录, 并仍以本地应用为其设计目标, 则那个分配方案较优?站点1站点2站点3站点3站点2站点1A1R1A3R2A2R3A1R1, R2A3A2R2, R3方案A方案B读取更新10101055 图2-12 COMPANY关系数据库模式, 主码用下划线标出 EMPLOYFNAMEMINIT LNAMEESSNBDATEADDRESSSEXSALARYSUPERSSNDNODEPARTMENTDNAMEDNOMGRSSNMGRSTARTDATEDEPT_LOCATIONDNODLOCATIONPROJECTPNAMEPN

15、OPLOCATIONDNO WORKS_ONESSNPNOHOURSDEPENDENTESSNDEPENDENT_NAMESEXBDATERELATIONSHIPExercise 2 三个站点A,B,C 部门1(总部),部门2,部门3 在站点B上频繁访问EMPLOYEE,PROJECT中有关工作在部门2的雇员和该部门管辖的项目信息 在站点C上频繁访问EMPLOYEE,PROJECT中有关工作在部门3的雇员和该部门管辖的项目信息 雇员信息主要是指EMPLOYEE表中的FNAME,ESSN,SALARY,SUPERSSN属性 A,B,C站点上频繁访问本站点所在部门的项目工时信息 站点A供公司总部使

16、用,经常存取为保险目的而纪录的DEPENDENT信息外,还定期地存取所有雇员和项目的信息FNAMEMINIT LNAME ESSN SALARYSUPERSSN DNOAlicia J Zelaya 999887777 25000 987654321 2Jennifer S Wallace 987654321 43000 888665555 2Ahmad V Jabbar 987987987 25000 987654321 2EMPD2DEP2DNAMEDNOMGRSSNMGRSTARTDATEAdministr 2987654321 2003-01-01DEP2_LOCSDNODLOCATI

17、ON 2StatlondDEP2_WORKSON ESSNPNOHOURS333445555 10 10.0999887777 30 30.0999887777 10 10.0987987987 10 35.0987987987 30 5.0987654321 30 20.0987654321 30 15.0DEP2_PROJECTPNAMEPNOPLOCATIONDNOComputer 10 Startlond 2Newbenef 30 Startlond 2图2-13 站点的片段分配(b)站点B上的对应于部门2的关系片段FNAMEMINIT LNAME SSN SALARYSUPERSSN

18、 DNOJohn B Smith 123456789 30000 333445555 3Franklin T Wong 333445555 40000 888665555 3Ramesh K Narayan 666884444 38000 333445555 3Joyce A English 453453453 25000 333445555 3EMPD3DEP3DNAMEDNOMGRSSNMGRSTARTDATEResearch 3333445555 2003-05-22DEP3_LOCSDNODLOCATION 3Bellaire 3Sugarlnd 3HoustonDEP3_WORKSO

19、N ESSNPNOHOURS123456789 1 32.5123456789 2 7.5666884444 3 40.0453453453 1 20.0453453453 2 20.0333445555 2 10.0333445555 3 10.0 DEP3_PROJECTPNAMEPNOPLOCATIONDNOProduct X 1 Bellaire 3Product Y 2 ugarlnd 3Product Z 3 Houston 3图2-13 站点的片段分配(a)站点C上的对应于部门3的关系片段 图2-15 站点A上的对应于部门1(总部)的片断 EMPLOYEEPROJECTPNAME

20、PNUMERPLOCATIONDNUMDEPENDENTESSNDEPENDENT_NAMESEXBDATERELATIONSHIPFNAMEMINIT LNAME SSN SALARYSUPERSSN DNOAlicia J Zelaya 999887777 25000 987654321 2Jennifer S Wallace 987654321 43000 888665555 2Ahmad V Jabbar 987987987 25000 987654321 2John B Smith 123456789 30000 333445555 3Franklin T Wong 33344555

21、5 40000 888665555 3Ramesh K Narayan 666884444 38000 333445555 3Joyce A English 453453453 25000 333445555 3Exercise 3 建立百货连锁店分布式数据库系统:1. 由一个总部和多个远程连锁店组成2.总部和各个连锁店之间有数据交换,局域网和广域网3.总部负责产生各类汇总表,如销售汇总表4.各站点系统相对独立5.总部统一管理各门店商品的业种和品牌信息,各门店也经常使用这两类信息6.供应商、合同、商品和销售信息等经营基础数据都由各门店单独管理和使用,门店之间互不相关7.整个连锁店的职员信息由总部管理,各门店只可以查询本部门的职员信息8.该连锁店的会员卡实行全国联网消费,会员可以经常异地消费基本关系模式(初步) DEPARTMENT EMPLOYEE CUSTOMER PRODUCT(p#,YEZHONG,PINPAI,) CONTRACT SALES SUPPLIER总 结 分布式数据库的创建方法(重构法/组合法) 自顶向下的设计方法数据分片数据分配 DATAID-D方法(分布要求分析和分布设计阶段) 实例研究:飞机订票系统 自底向上方法

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 应用文书 > 行业文书

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报