您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > 分布式数据库系统概述
分布式数据库系统概述2008.09目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS1.分布式数据库系统为什么要建立分布式数据库用户需求:数据共享用户组织往往是由地理上分散的多个部门所组成;许多部门可能已先后单独建立了自己的数据库;各个部门/用户的计算机已用网络连接在一起;业务上的联系使得各个部门/用户间需要共享数据。集中式数据库的缺点建立一个集中式数据库,各部门/用户通过计算机网络存取数据,是一个办法;但这有以下缺点:通信开销大、性能差、可用性差、可扩充性差、难以管理。1.分布式数据库系统部门2部门n部门1DBMSDB集中式数据库目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS1.分布式数据库系统分布式数据库的概念分布式数据库(DistributedDatabase,DDB)分布在计算机网络上的、多个逻辑相关的数据集所构成的整体。分布式数据库管理系统(DistributedDatabaseManagementSystem,DDBMS)建立、管理和维护分布式数据库的一组专门软件。分布式数据库系统(DistributedDatabaseSystem,DDBS)一组分布在计算机网络上的相关数据,由DDBMS进行统一管理后构成的系统。DDBS的特点①数据在物理上是分布的;②分布的数据在逻辑上是相关的;③分布的数据由DDBMS统一管理。1.分布式数据库系统分布式数据库结点2结点1结点n目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS1.分布式数据库系统分布式数据库的优缺点与集中式数据库相比,分布式数据库的优点:①有利于改善性能②可扩充性好③可用性好④自治性(Autonomy)好但分布式数据库也有其缺点:①数据库设计更复杂了——特别是数据分布问题②可能会面临异构(Heterogeneous)数据集成的难题目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS2.数据分布策略数据分布的目的主要目的:提高访问的局部性(LocalityofReference),从而提高系统性能。通过数据的合理分布,尽可能地使更多的数据能够就地存取(即访问的局部化),以减少数据的远程存取(即访问的全局化)。但在任何一个分布式数据库系统中,不可能做到所有数据的访问都局部化。即使通用增加数据副本的办法来提高读的局部化,但由于必须保证多副本的同步更新,必然会同时增加更新的全局化。其他目的:均衡负荷;提高系统可用性;等。目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS2.数据分布策略数据分布的方式三种方式:划分式(Partitioned):把全部数据看成是一个集合,按数据的来源和用途,将数据划分成若干互不相交的子集,分别分布在各个不同的结点上。全重复式(FullyReplicated):每个结点拥有全部数据的一个副本。部分重复式(PartiallyReplicated):前面两种极端的一个折衷。即根据需要,有些数据只分布在一个结点上,有些数据则分布在多个结点上。2.数据分布策略数据分布的方式三种方式比较数据分布方式比较角度划分式全重复式部分重复式复杂性低中高灵活性小中大体现DDBS的特点不充分中充分因数据分布而引起的问题少中多实际中应用的普遍程度不普遍不普遍普遍目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS2.数据分布策略关系分割数据分布的单位:①关系(Relation):即以整个关系(即基表)作为数据分布的单位。②裂片(Fragment):即将一个关系(称全局关系GlobalRelation)分割成多个小关系(称裂片Fragment),以裂片作为数据分布的单位。对一个关系有下列三种分割方式:水平分割(HorizontalFragmentation):按元组(即行)分割。垂直分割(VerticalFragmentation):按属性(即列)分割。混合分割(HybridFragmentation):先水平分割,再垂直分割;或反之。2.数据分布策略关系分割分割时,需遵守的三条准则:完备性(Completeness):分割时,全局关系的的所有数据都要分配到相应的裂片中,而不能丢失数据。可重构性(Reconstruction):分割后,可由裂片重构全局关系。即分割前后的数据库是等价的。不相交性(Disjointness):在水平分割时,各裂片中不能有重复元组。这样,可简化管理。(注:在垂直分割时,各裂片中必须有适当的重复属性)。2.数据分布策略关系分割—水平分割定义:将全局关系GR水平分割成n个裂片FR1,FR2,…,FRn。每个裂片FRi可由一个对全局关系的选择操作来定义:FRi=бPi(GR),其中Pi为GR上的谓词。这个选择操作对应以下SQL查询:SELECT*FROMGRWHEREPi;为满足不相交性,则应有:FRi∩FRj=Ф,i≠j即:{SELECT*FROMGRWHERE(Pi∧Pj);}=Ф,i≠j即:Pi∧Pj=FALSE,i≠j为满足完备性,则应有:FR1∪FR2∪…∪FRn=GR即:{SELECT*FROMGRWHERE(P1∨P2∨…∨Pn);}=GR即:P1∨P2∨…∨Pn=TRUE显然,各裂片的并即可重构全局关系,因此,以上水平分割可确保可重构性。2.数据分布策略关系分割—垂直分割定义:将全局关系GR(U)垂直分割成n个裂片FR1,FR2,…,FRn。每个裂片FRi可由一个对全局关系的投影操作来定义:FRi=ПUi(GR),其中Ui为U上的属性子集。这个投影操作对应以下SQL查询:SELECTDISTINCTUiFROMGR;为满足完备性,则应有:U1∪U2∪…∪Un=U为满足可重构性,则应有:即:FR1FR2…FRn=GR即:ПU1(GR)ПU2(GR)…ПUn(GR)=GR因此,在诸Ui中应有一定的重复属性,以便于进行连接操作。一种简单的做法是让每个Ui中均含有全局关系GR的(主)键。2.数据分布策略关系分割—混合分割定义:交替使用选择和投影操作来定义。水平垂直FR1FR11GRFR12FR2FR13这在理论上可行,实际中很少使用,实际系统也很少支持混合分割。水平垂直目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS2.数据分布策略数据分布带来的问题在分布式数据库中,由于数据的分布对数据管理带来了下列四个新问题:保持多副本的一致性在数据更新时,多个副本必须进行同步更新,以保证数据的一致性。这需要一定开销(Cost)。但这换来了读的局部性。保持分布的一致性在水平分割中,裂片由选择的谓词来定义。数据更新时,若谓词涉及的属性值发生变化,必然须要考虑数据的重新分布问题。2.数据分布策略数据分布带来的问题全局查询的处理全局查询(GlobalQuery):用户对全局关系提交的查询,但往往会涉及到系统中多个结点(裂片中的)数据。在DDBS中,用户同样只需提交全局查询,而不需关心查询处理和优化。但由于数据的分布,系统(DDBMS)必须对以下问题进行处理:全局关系是否被分割?如何被分割?关系或裂片在哪个结点上?如何在多副本中选择其一?如何将全局查询转换成可在有关结点上执行的子查询(Subquery)?查询如何优化?分布事务的管理分布事务也称全局事务(GlobalTransaction):存取多个结点上数据的事务。由于在DDBS中数据是分布的,因此,事务但往往也是分布的。这对并发控制、恢复等事务管理带来了新问题。2.数据分布策略数据分布带来的问题以上由于数据的分布带来的问题都是由DDBMS来处理,用户不必关心。这叫做DDBMS提供了分布透明性(DistributionTransparency)。分布透明的程度是衡量一个DDBMS好坏的重要指标。目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS3.DDBS的系统结构物理上分布、逻辑上集中DDBS系统结构示意图LDBMSGDBMSGMGDDCMGDBMSLDBMSGDDCMGDBMSLDBMSGDD网络用户用户用户结点1结点2结点3LDBLDDLDDLDBLDDLDDLDBLDDLDD3.DDBS的系统结构物理上分布、逻辑上集中DDBS——各部分的功能:全局DBMS(GDBMS)提供分布式数据库系统的用户界面,进行全局查询处理,协调全局事务的执行,保证数据分布透明性和全局数据库的一致性。GDBMS可分布于网络上全部结点、部分结点或一个结点上。全局数据字典(GDD)存放全局概念模式、裂片模式(FragmentationSchema)和分配模式(AllocationSchema),以及各模式之间、全局模式与局部模式之间的映象(mapping)等。局部DBMS(LDBMS)建立和管理局部数据库(LDB),协助全局事务的执行,并执行全局DBMS分配给本结点的子事务。通讯管理(CM)执行网络上结点间的基本通讯功能。3.DDBS的系统结构物理上分布、逻辑上集中DDBS——模式结构:全局外模式1全局外模式2全局外模式m用户/应用用户/应用用户/应用全局概念模式裂片模式分配模式局部概念模式1局部概念模式2局部概念模式n局部内模式1局部内模式2局部内模式nLDB1LDBnLDB2映象1映象2映象3映象4映象GDBMSLDBMS分布式DB增加的集中式DB原有的3.DDBS的系统结构物理上分布、逻辑上集中DDBS——特点有全局数据模式;强调统一管理;适合于自顶向下(从零开始)设计、构造分布式数据库;因受制于全局模式,数据库的集成、扩充与重构较难,缺乏灵活性;大多数商品化DDBMS产品均属此类。目录分布式数据库系统为什么要建立分布式数据库分布式数据库的概念分布式数据库的优缺点数据分布策略数据分布的目的数据分布的方式关系分割数据分布带来的问题DDBS的系统结构物理上分布、逻辑上集中DDBS物理上分布、逻辑上也分布的DDBS3.DDBS的系统结构物理上分布、逻辑上也分布的DDBS也称
本文标题:分布式数据库系统概述
链接地址:https://www.777doc.com/doc-3128965 .html