分布式数据库系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第九章分布式数据库系统本章内容分布式数据库系统概述分布式数据库系统的体系结构分布式查询处理客户/服务器结构的分布式系统9.1分布式数据库系统概述9.1.1集中式系统和分布式系统集中式数据库管理系统的缺点:通信开销大;系统的坚固性差;性能差;可扩充性差;设计、管理困难。分散式系统:将数据库分成多个,建立在多台计算机上,数据库的管理、应用程序的研制都是分开并相互独立的,之间不存在数据通行联系。分布式数据库系统的特点:数据的分布性;统一性;透明性。统一性(两个方面:数据在逻辑上的统一性和数据在管理上的统一性)分布式数据库与集中式数据库相比的优点:坚固性好;可扩充性好;可改善性能;自治性好。9.1分布式数据库系统概述与集中式数据库相比,分布式DB具有:数据分布式的特点。与分散式数据库相比,分布式DB具有:逻辑整体性的特点。背景数据库系统+计算机网络9.1.2分布式数据库系统的定义DB1DB1DB1计算机1计算机2计算机3通讯网络T1T2T3T1T2T3T1T2T39.1.2分布式数据库系统的定义一个分布式系统由通信网络联接起来的结点的集合。每个结点都是拥有集中式数据库的计算机系统。分布式数据库的特点:数据库中的数据不是存储在同一场地,而是分布存储在多个场地。9.1.2分布式数据库系统的定义分布性:数据存储在不同场地上。与集中式数据库不同。逻辑整体性:数据逻辑上是相互联系的一个整体。与分散在计算机网络不同站点上的一组没有相互联系的本地数据库区别开来。9.1.2分布式数据库系统的定义物理上是分布的,逻辑上是统一的一组数据库的集合要素计算机网络数据库系统DB1DB1DB1计算机1计算机1计算机1通讯网络北京重庆上海银行系统访问本地银行数据:局部应用通兑业务、转账业务:全局应用9.1.2分布式数据库系统的定义全局应用:指涉及到两个或两个以上场地中数据库的应用。网络的每个站点具有独立处理能力,可以执行局部应用,同时也能通过网络执行全局应用。分布式数据库是由一组数据库组成,这些数据库分布在计算机网络的不同站点上,逻辑上是属于同一个系统的。9.1.2分布式数据库系统的定义分布式数据库包含两个重要组成部分:分布式数据库和分布式数据库管理系统。分布式数据库是计算机网络环境中各场地上数据库的逻辑集合。分布式数据库管理系统是分布式数据库系统中的一组软件,它复杂管理分布环境下逻辑集成数据的存取、一致性、有效性和完备性。9.1.3分布式数据库系统的透明性位置透明性用户或应用程序不必了解它所使用的数据的存储位置。举例:银行的借贷业务:要判断的情况有5种。复制透明性有些数据并不存在一个场地,可能重复存放在不同的场地。本地数据库中也包含了外地数据库中的数据。一个分布式系统有了这两种透明性后,用户看到的系统就如同一个集中式系统。9.1.4分布式数据库系统的优缺点具有灵活的体系结构数据库的使用单位组织上、地理上是分布的适应分布式管理和控制机构。经济性能优越经济上和组织上的理由系统的可靠性高,可用性好。局部应用的响应速度快。可扩展性好,易于集成现有系统。既有数据库互连,历史继承;数据资源共享系统规模逐步扩展增加结点,不影响现有系统运行9.1.4分布式数据库系统的优缺点缺点:系统开销大,主要花在通信部分。复杂的存取结构在集中式系统中是有效存取数据的重要基数,但在分布式系统中不一定有效。数据的安全和行保密性较难处理。9.1.5分布式数据库系统的分类同构同质数据库每个场地都用同一类型的数据模型,并运行同一型号的DBMS同构异质数据库每个场地都用同一类型的数据模型,但运行不同型号的DBMS异构数据库场地上的数据库系统不尽相同DBMS不同数据模型不同练习:1、与集中式DB相比,分布式DB具有()特点,与分散式DB相比,又具有()特点。2、区别系统是分散式还是分布式就是判定系统是否支持().3、在分布式DB中,用户看到的系统如同一个集中式DBS,这是因为分布式系统具有()和()特点。4、如果各个场地都采用同类型数据模型,但DBMS不同型号,这种系统属于()型DBMS.1、数据分布性,逻辑整体性2、全局应用3、位置透明性,复制透明性4、同构异质型DDBS.9.2分布式数据库系统的体系结构9.2.1分布式数据存储(1)数据分配数据分配是指数据在计算机网络各场地上的分配策略。集中式:所有数据均安排在同一个场地上。分割式:所有数据只有一份,分布被安置在若干个场地。全复制式:数据在每个场地重复存储。混合式:数据库分成若干可相交的子集,每一子集安置在一个或多个场地上,但是每一场地未必保存全部数据。分布式数据存储(2)数据分片:分布式数据库中的数据可以被分割和复制在物理场地的各个物理数据库中。优点将关系分片,有利于按用户需求组织数据的分布。如产品→(内销产品,出口产品)。分片方式水平分片垂直分片导出分片混合分片分布式数据存储分布式数据存储1)水平分片将关系r按行分为若干子集r1,r2,…,rn,每个子集ri称为一个水平片段。一个水平片段可以看成是关系上的一个选择。ri=P(i)(r)如M_S=sex=‘M’(S)关系的重构可以通过并运算来实现。r=r1∪r2∪…∪rn分布式数据存储(2)垂直分片将关系r按列分为若干属性子集r1,r2,…,rn,每个子集ri称为一个垂直片段。一个垂直片段可以看成是关系上的一个投影。ri=∏Ri(r)其中Ri是r的一个属性子集。如P_S=∏SNO,SNAME(S)关系的重构可以通过连接运算来实现。r=r1r2…rn要求所有垂直分片的片段都包括关系的键。分布式数据存储(3)混合分片关系按某种方式分片后,得到的片段再按另一种方式继续分片。如SC(S#,C#,G,DNO)按学生系别分片,再对每个片段按成绩(及格,不及格)分片。分布式数据存储定义各种分片时必须遵守下面三个条件:1)完备性条件:必须把全局关系的所有数据映射到各个片段中,绝不允许发生属于全局关系的某个数据不属于任何一个片段。2)重构条件:划分所采用的方法必须确保能够由各个分段重建全局关系。3)不相交条件:要求一个全局关系被划分后得到的各个数据片段互相不重叠。目的是为了在数据分片时容易控制数据的复制。9.2.2分布式数据库系统的体系结构全局外模式全局应用的用户视图。全局概念模式定义D-DBS中数据的整体逻辑结构,数据如同没有分布一样。分片模式每一个关系可以分为若干互不相交的部分,每一部分称为一个片段。分配(分布)模式定义片段的存放地点。用户视图用户视图全局视图分片视图分配视图局部概念视图局部概念视图局部内视图局部内视图局部DB局部DB分布式集中式分片视图分片视图分配视图分配视图局部概念视图局部内视图局部DB举例:RR1R2R3R4R11R21R12R22R23R33R43S1S2S3逻辑片段物理映像一个全局关系的片段所对应的存储片段组成两个物理映像可以相同。9.2.3分布透明性分布(网络)透明性分片透明性(全局视图和分片视图之间)用户或应用程序只对全局关系进行操作而不必考虑关系的分片。如果分片模式改变了,通过调整全局模式与分片模式之间的映象关系来保持全局模式不变。位置透明性(分片视图和分配视图之间)用户或应用程序不必了解片段的存储位置。局部数据模型透明性(分配视图和局部概念视图之间)用户或应用程序不必了解局部场地上使用的是哪种数据模型。RR1R2R3R4R11R21R12R22R23R33R43S1S2S3例子9.49.2.4分布式数据库管理系统的功能及组成1、DDBMS的主要功能:接收用户请求;访问网络数据字典;如果目标数据存储于系统的多个计算机上,就必须进行分布式处理;通信接口功能;在一个异构型分布式处理环境中,还需要提供数据和进程移植的支持。2、DDBMS的组成:查询处理子系统、完整性子系统、调度子系统和可靠性子系统。9.2.5分布式数据库系统中存在的问题1、不同场地的通信速度,与局部DBS的存储部件的存取速度相比,是非常慢的。2、通信系统有较高的存取延迟时间。3、在CPU上处理通信的代价很高。4、不同通信系统有不同意义的字符,数据转换速度也不一样,可以相差1000倍,存取延迟时间可能相差106倍。9.3分布式查询处理分布式数据库系统中由于数据分布在各个场地,因此,查询的处理比集中式数据库复杂。9.3.1查询处理的传输代价Site-1Site-2EMPLOYEE104个记录每个记录100字节DEPARTMENT100个记录每个记录100字节检索每个职工的姓名、地址及工作部门名selectENAME,ADDRESS,DNAMEfromEMPLOYEE,DEPARTMENTwhereDNO=DNUMBER网络传输速度104字节/秒分布式查询处理⒈把关系EMPLOYEE和DEPARTMENT分布从场地1和场地2传到场地3,然后在场地3站进行查询传送时间T=(104100+10035)/104=100s32传送时间T=总传输延迟+总数据量/传输速度1分布式查询处理⒉把关系EMPLOYEE传送到场地2,在场地2作联接,再把操作结构从场地2传到场地3:传送时间T=(104100+400000)/104=140s132分布式查询处理3.把关系DEPARTMENT传送到场地1,在场地1作联接,再把操作结构从场地1传到场地3:传送时间T=(3500+400000)/104=40s132分布式查询处理2)在场地3有一个查询“检索每个部门的名字和其经理的姓名、地址”。selectDNAME,ENAME,ADDRESSfromEMPLOYEE,DEPARTMENTwhereMGRENO=ENO分布式查询处理⒈把关系EMPLOYEE和DEPARTMENT分布从场地1和场地2传到场地3,然后在场地3站进行查询传送时间T=(104100+3500)/104=100s32传送时间T=总传输延迟+总数据量/传输速度1分布式查询处理⒉把关系EMPLOYEE传送到场地2,在场地2作联接,再把操作结构从场地2传到场地3:传送时间T=(104100+4000)/104=100s132分布式查询处理3.把关系DEPARTMENT传送到场地1,在场地1作联接,再把操作结构从场地1传到场地3:传送时间T=(3500+4000)/104=0.75s132分布式查询处理3)如果在场地2提出上述两个查询Q1和Q2,可以有两种方法:4、把关系EMPLOYEE传送到场地2,在场地2作联接,此时Q1和Q2的传输量都是1000000,时间都是100秒。12Q1Q2分布式查询处理5.把关系DEPARTMENT传送到场地1,在场地1作联接,再把结果从场地1传到场地2,此时Q1的传输量为:3500+400000=403500,时间是40秒。Q2的传输量都是3500+4000=7500,时间是0.75秒。129.3.2基于半联接的查询优化策略数据在网络中传输,如果都以整个关系传输,显然是一种冗余。不参与联接的值或无用的值不必在网络中来回传输。(1)、基于半联接的查询实例:如果在场地2提出上述两个查询Q1和Q2,可以有两种方法:把关系DEPARTMENT传送到场地1,在场地1作联接,再把结果从场地1传到场地2。可以改进:1)在场地2,用投影求得关系DEPARTMENT中参与联接操作的属性值,把投影结果传输到场地1。Q1:数据传输量是400字节(DEPARTMENT在DNUMBER上的投影)。Q2:数据传输量是900字节(DEPARTMENT在MGRENO上的投影)。9.3.2基于半联接的查询优化策略2)在场地1,执行联接操作,并用投影求出所需的属性值,把结果送到场地2。Q1:数据传输量是340000字节。Q2:数据传输量是3900字节。3)在场地2,执行联接操作,把结果给用户。Q1:总的数据传输量是340400字节,传输时间为40秒。Q2:总的数据传输量是

1 / 53
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功