第六讲分布式数据库及相关问题资料教程

上传人:yulij****0329 文档编号:141440901 上传时间:2020-08-08 格式:PPT 页数:85 大小:1.17MB
返回 下载 相关 举报
第六讲分布式数据库及相关问题资料教程_第1页
第1页 / 共85页
第六讲分布式数据库及相关问题资料教程_第2页
第2页 / 共85页
第六讲分布式数据库及相关问题资料教程_第3页
第3页 / 共85页
第六讲分布式数据库及相关问题资料教程_第4页
第4页 / 共85页
第六讲分布式数据库及相关问题资料教程_第5页
第5页 / 共85页
点击查看更多>>
资源描述

《第六讲分布式数据库及相关问题资料教程》由会员分享,可在线阅读,更多相关《第六讲分布式数据库及相关问题资料教程(85页珍藏版)》请在金锄头文库上搜索。

1、第六部分 分布式数据库及相关技术 的讨论(第8-11章内容),一 分布式数据库概述 产生和发展 概念和分类 体系结构 模式结构及独立性。 二 分布式数据库系统中存在的技术问题 分布式DB的设计 分布式DB的查询 分布式DB的事务管理及并发。,一 分布式数据库概述,I 分布式数据库的产生及发展,a 经济的发展 b 计算机硬件环境及网络的发展,发展历程:产生于20世纪70年代末期,成长于80年代 第一个分布式数据库系统SDD-1是美国计算机公司(CAA)于1976年-1978年设计,79年在DEC-10/20上实现。 德国斯图加特大学研制的porel系统 美国IBM的R*和system R 美国加

2、大学伯克利分校的Ingres 法国INRA研制的SIRIUS-DELTA。,1987年:C.J Date提出了完全的,真正的分布式DBS应遵循的12条规则: 本地自治性 不依赖于中心站点 可连续操作 位置独立性 数据分片独立性 数据复制独立性 分布式查询独立性 分布式事务管理 硬件独立性 操作系统独立性 网络独立性 DBMS独立性,2.分布式数据库系统的基本特点:,A 结构特点:物理分布,逻辑相关。,B 应用特点:站点自治。,多处 理机 系统,C.数据分布透明性:数据的物理独立性内容更丰富,增加了数据分布透明性。 -数据的逻辑分片、数据的物理位置分布、数据的复制,对用户透明。,D.集中与自治兼

3、备的数据库系统控制机制. -两个层次的数据共享:局部/全局数据共享。,E.增加数据冗余度。 -利用数据冗余提高系统可靠性、可用性和系 统性能。,F.事务管理的分布性。 -分布环境下,维护事务的原子性、一致性、隔离性和持久性。,3.分布式数据库系统的模式结构,4.分布式数据库系统的分类,A 按局部DBMS的数据模型分类: -同构型:数据模型相同 *同质同构:数据模型相同且局部DBMS相同。 *异质同构:数据模型相同外交部局部DBMS不同。 SDD-1和DDM 美国CCA公司 SYSTEM R* 美国IBM公司 POREL 德国斯图加特大学 -异构型 :数据模型不同 MULTIBASE 美国CCA

4、1981研制 IMADAS:H 佛罗里达大学1984研制 DDTS HONEYWELL公司1980年研制 。,B 按全局控制系统类型分类: -全局控制集中型DDBS DDBS的全局控制机制及数据字典位于一个中心站点,由中心站点完成全局事务的协调和局部数据库的转换等所有控制功能。 -全局控制分散型DDBS DDBS的全局控制机制及数据字典分散在网络的各个站点上,每个站点都能完成全局事务的协调和局部数据转换。 -全局控制可变型(主从型) 将站点分成两组,一组都包含全局控制机制和数据字典,另一组为辅助站点,只包含自己的数据应用。,4.分布式数据库管理系统的功能结构:,除了具有集中式DBMS具有的功能

5、外,还要有如下附加 的功能: * 数据跟踪 * 分布式查询处理能力 * 分布式事务管理的能力 * 复制数据的能力 * 安全性 * 分布式目录管理,二.分布式数据库系统中存在的技术问题:,1 分布式数据库系统的设计 -全局模式的设计 -数据分片,分布 2 分布式数据库的查询处理 3 分布式数据库的事务管理及并发控制 4 分布式数据库的可靠性 5 异构数据库的连接 6 安全性 7 目录管理,1.分布式数据库设计,一 方法: 根据设计是基于现存的数据系统还是构造一个全新的数据库系统,有两种方法创建分布式数据库: 组合法:基于现有的系统,建立一个协调管理系统。 -采用自底向上的方式构建 重构法:创建全

6、新的数据库系统 -自顶向下的方式构建,二 分布式数据库设计的内容: 1. 数据库设计基础-需求分析 1)数据需求 2)应用需求 应用的原发站点:发出应用请求的站点 应用在站点被激活的频率 应用对数据对象访问次数、类型和分布统计,2. 数据库设计(设计的核心任务) 全局模式设计 局部数据库设计 数据分片设计 片段的位置分配设计,三 分布式数据库设计的目标: 确保数据库数据和应用具有最大程度的本地性。 分布式数据的可用性和可靠性 工作负荷分布 存储的能力和费用,四 自顶向下的方式构建分布式数据库,1 设计的步骤:,2 数据库的分片设计,(1). 什么叫“片段”? 指在分布式数据库系统中,某一站点上

7、存储的数据集合。,(2).分片设计的目的? 产生全局数据的一个合理的划分,从而使每个站点只获得它所需要的数据,最大可能保证应用的本地性。,(3)分片应遵循的一般规则:设:R = R1, R2, , Rn 1)完整性 即,tR, 则,必有t Ri ( i = 1,2, , n ) 2)可重构性 即,R = Ri ( i = 1,2, , n ) 或R = Ri ( i = 1, , n ) 3)不相交性 即,Ri Rj = (i,j= 1, , n,且i j) 或Ri Rj = 主码属性(i ,j= 1, , n,且i j),(4)分片的基本类型和方法 水平分片,垂直分片,混合分片,A 水平分片

8、:对全关系进行选择操作,把具有相同性质的元组进行分组,构成若干不相交的子集。初级分片和导出分片,初级分片:以关系自身属性性质分组,例1 S( S#, Sname, Age, Sex ),define fragment S1 as select * from S where Sex = M ;,define fragment S2 as select * from S where Sex = F;,导出分片:用其它关系的属性对某一全关系进行分组,例2 设:全局关系 SC( S#, C#, Grade ) S( S#, Sname, Age, Sex ),设计需求:按S的“性别”属性(Sex)去划

9、分SC,Define fragment SC1 as select SC.S#, C#, Grade from SC, S where SC.S# = S.S# and S.Sex = M,Define fragment SC2 as select SC.S#, C#, Grade from SC, S where SC.S# = S.S# and S.Sex = F,B 垂直分片:利用投影操作把全关系的属性分成若干组,目标是把频繁使用的属性聚集在一起,且各片段只在键属性下重叠。,例3 设:全局关系EMP(E#,Name,Dept,Job,Sal,tel) Key = E# ,垂直分片: EM

10、P1(E#, Name, Sal, tel) EMP2(E#, Dept, Job),3 数据库片段位置分配的设计,两种方式: 非冗余分配:一个片段映射到一个站点 冗余分配:一个片段映射到多个站点,非冗余“最佳适应”分配法: 计算:Bij = k( Fkj * Nki ) 即,计算所有的应用在站点j上访问片段i 的总次数。 对所有站点j确定j, 使得Bij = max( Bij ) 即,把片段Ri分配到有最大访问次数的站点j。 i-片段序号 j-站点序号 k-应用序号 Fkj-应用k在站点j上激活的频率 Rki-应用k对片段i 进行检索访问的次数(Read) Uki-应用k对片段i 进行更新访

11、问的次数 Nki = Rki + Uki -应用k对片段i进行访问的总次数,冗余分配比较复杂,一般采用下列方法之一进行估算: -所有得益站点法: -附加复制法,(1)“所有得益站点”法,对所有站点确定非冗余分配方案。,从全部结点中选择一组站点,使得给这组站点分配片段Ri的一个拷贝所得到的检索效益,大于从其它站点对Ri实施更新的代价。,把片段Ri拷贝分配给该组站点,(2)附加拷贝法,对所有站点确定非冗余分配方案。 计算把片段Ri分配给所有站点所能得到的总效益fi(以及一个站点分得Ri所得到的效益) 从分得片段Ri能够获取最大益处的站点起,对各站点依次附加片段Ri的一个拷贝,直到增加片段Ri不能使

12、系统得到明显效益(或者说效益增大“接近”fi )为止。,总结:数据库片段及位置分配的设计所需要 的参数均从 应用需求中得来,总结这些参数可用如下三个表表达: A 频率表:各站点每一应用激活的次数 B 划分表:各实体的潜在水平分片规则 C 极化表:给定站点发出一给定应用访问一给定片段的 概率,频率表,划分表,极化表,分布式数据库设计的一个例子,订票系统维护分布在三个网络站点(与机场1,2,3处于同一地理区域)上的数据库。数据库存储机场规程、班机起降和旅客订票等数据。,(1)概念设计-全局概念模式(E-R图),(2)收集数据与其最相关的应用知识-用操作模式表示,a 订票: 用于旅客预订机票。,b

13、登记: 用于旅客登机登记任务记录。,c 起飞应用:查询即将从一个机场起飞的30个班机信息。,(3)在操作模式的基础上,对每一实体估算应用的定量数据, 建立逻辑访问表,例“班机”实体逻辑访问表,(4)分布需求分析,a. 频率表:调研并给出在三个站点上使用各个应用的频率(激活的次数),b.划分表:分析各个实体各种可能的分片方式及其选择性,*基本划分,*导出划分,注释表:,c.极化表:调研并给出从一个站点发出一个应用所需要访问某片段的概率。,(5)飞机订票系统的分布式设计,a.为各个实体选择合适的分片,原则:满足本地性,不造成应用困难。,对本例来予,各个实体采用水平分片:, “机场” 由基于区域的基

14、本水平分片(片段(F1F3):机场1,机场2,机场3), “班机” 由基于起飞机场区域的导出水平分片(片段(A1A3) :班机1,班机2,班机3), “旅客” 由基于旅客订票涉及的班机起飞机场所在区域的导出水平分片(片段(P1P7):旅客1,旅客2,旅客3,旅客7),b.进行片段的非冗余分配:,1)站点1:机场1,班机1,旅客1 2)站点2:机场2,班机2,旅客2 旅客4,旅客6,旅客7,3)站点3:机场3,班机3,旅客3 旅客5,根据 频率表 和 极化表,c.进行片段的冗余分配: 根据应用可以将旅客4.5.6分配在两个站点上,旅客7分配在三个站点上。,(6)重构局部模式,本节要点,1. 理解

15、分布式数据库系统的基本概念及特征,总结分布式数据库分片设计方法。熟练掌握使用SQL语句,定义全局关系模式的分片方法。 2. 总结“自顶向下”设计分布式数据库的方法。掌握 从设计全局设计模式到各站点上局部模式的分布 设计方法。 3. 理解分布式数据库片段分配设计方法的思想。,2.分布式数据库查询处理,一、分布式查询处理的步骤,查询分析,若该查询属于局部查询,则执行局部查询处理后,即可结束。,查询分解,把全局查询或远程查询转换成定义在全局关系上的关系代数表达式,并优化该表达式。,查询本地化,把一个全局关系上的查询,转化为对片段的局部查询。,全局查询优化:,找出对各个片段局部查询结果之间的最佳操作次

16、序,使得代价最小。其重点在连接运算和并运算的优化,局部优化:,由确定的片段所在站点执行,二、分布式查询处理的代价QC估算: QC=I/O+通信代价T,*通信代价T估算,T = 传输次数(每次传输延迟时间 + 每次传输数据量/ 数据传输速率) = 传输次数(C0 + X / D),三、分布式查询策略的重要性:,例设:教学数据库中:,S(S#, Sname, Age, Sex) 10,000个元组, 存放在A站点(男/女各一半) SC(S#, C#, Grade) 1,000,000个元组, 存放在A站点(每人选课100门) C(C#, Cname, Teacher) 100,000个元组, 存放在B站点 假设:每个元组的长度为100 bit; 通信系统传输速率为10,000bit / 秒;每次通信延迟时间为1秒。,查询:选修课名Maths 的男生的学号和姓名,对于本例,

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号