




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
分布式数据库系统1
分布式数据库系统是数据库技术与网络技术两者相互渗透和有机结合的结果。
粗略定义:
分布式数据库是由一组数据组成,这些数据物理上分布在计算机网络的不同结点上(也称场地),逻辑上是属于同一个系统。
定义强调两点:分布性逻辑整体性1.概述2例子:一个分布式数据库系统
分布式数据库系统必须支持全局应用3全局应用
全局应用指应用中涉及两个及两个以上结点的数据库。这和只存取本结点数据库应用不同,和只存取另一个结点(或远程结点)数据库应用也不同。
分布式数据库确切定义分布式数据库是由一组数据组成,这组数据分布在计算机网络的不同计算机上,网络中的每个结点具有独立处理的能力(称场地自治),可以执行局部应用。同时每个结点也能通过网络通信子系统执行全局应用。
定义更强调:场地自治性自治场地间的协作性4分布式数据库系统的特点数据独立性
数据的逻辑独立性
数据的物理独立性
数据分布独立性(分布透明性)
分布透明性是指用户不必关心数据的逻辑分片、数据物理位置分布的细节、重复副本一致性、局部场地上数据库支持哪种数据模型。
有了分布透明性,用户的应用程序编写如同数据没有分布。当数据从一个场地移到另一个场地时不必修改应用程序。集中式数据库系统中5
数据分布的信息由系统存储在数据字典中。用户对非本地数据的访问请求由系统根据数据字典予以解释、转换和传送。
集中式数据库系统中,数据独立性是通过系统的三级模式(外模式、概念模式、内模式)和它们之间的二级映射得到的。
分布式数据库系统中,分布透明性是由于引入了新的模式和模式之间的映射得到的。分布式数据库系统的特点6分布式数据库系统的特点集中与自治相结合的控制结构
集中式数据库系统中,对共享数据库的控制是集中的,并由DBA负责监督和维护系统的正常运行。
分布式数据库系统中,数据共享有两个层次:
局部共享(相应的控制机构—自治,各场地独立管理DBMS)全局共享(相应的控制机构----集中,协调各局部DBMS工作,执行全局应用)7分布式数据库系统的特点适当增加数据冗余度
集中式数据库系统中,冗余数据浪费空间,易造成数据不一致性。分布式数据库系统中,需要冗余数据,即不同场地存储同一数据的多个副本。原因如下:
提高系统的可靠性、可用性当某一场地出现故障时,系统可以对另一场地上的相同副本进行操作,不至于造成整个系统的瘫痪。提高系统性能系统可选择用户最近的数据副本进行操作,减少通信代价,改善整个系统性能。
存在的问题:冗余副本之间存在数据不一致,必须着力解决。8全局的一致性、可串行性和可恢复性
分布式数据库系统中全局应用要涉及到两个以上结点的数据,全局事务可能由不同场地的多个操作组成。所以应该保证数据库的全局一致性、全局并发事务的可串行性和系统的全局可恢复性。
当一个结点发生故障,操作失败后如何使全局事务回滚?如何使另一个结点撤销已执行的操作或不必再执行其他操作。分布式数据库系统的特点采用的技术比集中式数据库系统更复杂和困难。9
分布式数据库系统的体系结构是全局应用的用户视图整体逻辑结构定义片段以及全局关系到片段的映像定义片段的存放地点10
根据分布模式提供的信息,一个全局查询可分解为若干个子查询,每个子查询要访问的数据属于同一场地的局部数据库。片段是全局关系的逻辑部分,一个片段在物理上可分配到网络的不同结点上。
分布模式到各局部数据库的映像把存储在局部场地的全局关系或全局关系的片段映像为各局部概念模式,局部概念模式采用局部场地的DBMS所支持的数据模型。分布式数据库系统的体系结构
分片模式和分布模式均是全局的,它们和相应的映像使分布式数据库系统具有了分布透明性。11
数据分片分布式数据库系统中,将数据分片,使数据存放的单位是片段而不是关系。
数据分片的方式
水平分片
垂直分片
导出分片
混合分片SC中按照Age>18分片Age来自student12例:年龄>18岁的学生选课片段:SC_A(SNO,CNO,GRADE)由以下查询结果组成:
SELECTSNO,CNO,GRADEFROMS,SCWHERES.SNO=SC.SNOANDAGE>18);年龄
18岁学生选课的片段:SC_B(SNO,CNO,GRADE)由以下查询结果组成:
SELECTSNO,CNO,GRADEFROMS,SCWHERES.SNO=SC.SNOANDAGE
181);13
分片方式应满足的条件
完全性----一个全局关系中的数据必须完全地划分为若干片段,不允许某些数据属于全局关系但不属于任何一个片段。
不相交性----不允许一个全局关系的某些数据既属于该全局关系的每一个片段又属于全局关系的另一个片段。
可重构性----可由片段重构全局关系。
垂直分片可用连接操作重构全局关系;
水平分片可用并操作重构全局关系。数据分片14
分布透明性----包括分片透明性、位置透明性和局部数据模型透明性。
分片透明性----分布透明性的最高层次。指用户或应用程序只对全局关系进行操作而不考虑关系的分片。当分片模式改变了,由于全局到分片模式的映像、全局模式不变,应用程序不必改写。
位置透明性----分布透明的下一层次。指用户或应用程序不必了解片段的场地,当存储场地改变了,由于分片模式到分布模式的映像,应用程序不必改变。
局部数据模型透明性----用户或应用程序不必了解局部场地上使用哪种数据模型,模型转换以及数据库语言的转换由映像4完成。15例:设在分布式数据库系统中全局关系:
Student(Sno,Sname,Sdept,Sage)现将Student关系划分为两个片段S-A,S-B。S-A代表理学院的学生,存储在场地1(Site1)S-B代表文学院的学生,存储在场地2和场地3(冗余)。有一个查询:从终端读入一个学号,查找该学号的学生姓名、年龄,并显示在屏幕上。分布透明性16
假设应用程序用嵌入式C写的,略去细节,仅给出查询部分的算法思想。情况1:若系统具有分片透明性,则Scanf(“%s”,Snumber);EXECSQLSELECTSname,SageINTO:NAME,:AGEFROMStudent/*在全局关系中查找*/WHERESno=:Snumber;Printf(“%s,%d”,NAME,AGE);分布透明性17情况2:若系统具有位置透明性,但不具有分片透明性,则需要考虑分片情况。Scanf(“%s”,Snumber);EXECSQLSELECTSname,SageINTO:NAME,:AGEFROMS-A/*先在片段S-A中查找*/WHERESno=:Snumber;If(!FOUND){EXECSQLSELECTSname,SageINTO:NAME,:AGEFROMS-B/*再在片段S-B中查找*/WHERESno=:Snumber;}Printf(“%s,%d”,NAME,AGE);分布透明性18分布透明性
情况3:若系统只具有局部数据模型透明性,不具有位置透明性(当然也就不具有分片透明性),则需考虑分片和片段的存储场地。Scanf(“%s”,Snumber);EXECSQLSELECTSname,SageINTO:NAME,:AGEFROMS-AATSite1
/*先在场地1的片段S-A中查找*/WHERESno=:Snumber;If(!FOUND){EXECSQLSELECTSname,SageINTO:NAME,:AGEFROMS-BATSite2
/*再在场地2的片段S-B中查找*/WHERESno=:Snumber;/*也可以在场地3的片段S-B中查找*/}Printf(“%s,%d”,NAME,AGE);用户可选择离他较近的某个场地进行访问,可提高查询效率。19
若没有分片透明性,用户必须了解分片情况;
若没有位置透明性,场地选择由用户程序负责,用户不仅要了解分片的情况,还必须了解片段存放的位置、场地分布的远近以及通信线路的质量;
若系统具有位置透明性,上述任务由系统承担,并且当访问场地2时,若该线路繁忙或出现通信故障,系统自动改为访问场地3。分布透明性20
分布式数据库管理系统(D-DBMS)分布式数据库管理系统的结构局部场地DBMS,建立和管理局部数据库,提供场地自治,执行局部应用及全局查询的子查询全局DBMS,提供分布透明性,协调全局事务的执行,协调各局部DBMS以完成全局应用,保证数据库的全局一致性,执行并发控制,实现更新同步,提供全局恢复功能。全局数据词典,存放全局概念模式、分片模式、分布模式的定义及各模式间映射,存放用户存取权限、完整性约束等通信管理(CM),完成各场地间的消息和数据的传送,完成通信功能。各场地可同构或异构21
查询处理和优化分布式环境下的查询处理和查询优化较集中式环境更复杂。实例:数据库:简化了的供应商和零件数据库S(Sno,City)104个元组,存放在场地A;P(Pno,Color)105个元组,存放在场地B;SP(Sno,Pno,Quantity)106个元组,存放在场地A;设每个关系的元组均为100字节长。查询:供应红色零件的、北京的供应商号。SELECTS.SnoFROMS,P,SPWHERESP.Pno=P.PnoANDS.Sno=SP.SnoAND
S.City=‘北京’AND
P.Color=‘红色’;22
估算值(某些中间结果的元组数)红色零件数=10
北京供应商的装运单数=105
对通信系统的假定
数据传输速度=104字节/秒传输延迟=1秒考虑几种可能的查询策略,并计算通信时间T[i]:T[i]=总传输延迟+总数据量/数据传输速度(单位:b/s)策略1:把关系P传送到场地A,在场地A进行查询处理,通信时间为:T[1]=1+105100/104=103秒(16.7分)字节长关系P的元组数数据传输速度S,SPP场地B场地A传P传输延迟策略1:把关系P传送到场地A,在场地A进行查询处理,通信时间为:T[1]=1+105100/104=103秒(16.7分)字节长关系P的元组数数据传输速度S,SPP场地B场地A传P查询处理和优化23策略2:把关系S、SP传到场地B,在B地执行查询处理,所以,通信时间为:T[2]=2+(104+106)
100/10410100秒(2.8小时)S,SPP传S传SP场地A场地B查询处理和优化24策略3:(S)
SPP问答场地A场地B在场地A连接关系S和SP,选出城市为北京的元组(105个),然后对这些元组中的每个元组的Pno,询问场地B,看零件是否为红色。共问答105次,由于不是传送数据,只是消息回答,所以通信时间为:
T[3]=2*105秒(2.3天)查询处理和优化25策略4:(S)
SPP问答场地A场地B在场地B选出红色零件的元组(10个),然后对每一个元组逐一检查场地A,看北京供应商的装运单中是否有这个零件装运单(若有则选出S#),每做这样一次检查包括2次消息,共问答10次,通信时间为:
T[4]=2*10=20秒查询处理和优化26策略5:(S)
SPP传(S#,P#)场地A场地B在场地A选出北京的供应商的装运单把结果送到B,在场地B完成最后处理,通信时间为:
T[5]=1+(105100)/104=103秒(16.7分)
查询处理和优化27策略6:S,SP
(P)传
(P)场地A场地B在场地B的关系P中选出红色的元组(10个),把结果送到场地A完成最终处理。通信时间为:
T[6]=1+(10100)/1041秒分布式数据库中通信时间是最主要的开销,故此例只考虑查询处理中的通信时间。也有策略考虑数据传输速度和传输延迟的。不同策略通信时间相差很大,达多个数量级!必须优化。查询处理和优化2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 拆除工程中的施工噪音与振动防治方案
- 建筑工程项目现场设备安装与调试方案
- 混凝土施工中的工程质量审查与反馈方案
- 小学道德与法治教学中传统文化的融合策略
- 建筑项目施工风险评估与管理方案
- 支付创新与环保融资-洞察及研究
- 智算中心机器学习任务调度与优化方案
- 宿舍楼智能化管理与监控方案
- 部编版语文七年级下册第22课《太空一日》听评课记录2
- 发诊感控知识培训课件
- 渣土运输车辆调度措施
- 前列腺穿刺患者护理查房
- 2024-2025学年 三年级第二学期口算数学1000题【带答案】
- 《中华人民共和国学前教育法》知识培训
- 2024年北京邮电大学人员招聘笔试真题
- T/CFPA 017-2023消防员防护辅助装备阻燃防静电内衣
- 价值导向引领:CRM策略的深度剖析与创新实践
- 鼓胀中医护理
- 设备整厂出售合同协议
- 2025-2030中国高k和ALD和和CVD金属前体行业市场发展趋势与前景展望战略研究报告
- 2025年4月12日衢州事业单位及市直遴选(选调)笔试真题及答案解析
评论
0/150
提交评论