已阅读5页,还剩58页未读, 继续免费阅读
(系统分析与集成专业论文)分布式数据库技术在misgis中的应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 当前,分布式数据库技术同益得到广泛应用。复制是分饰式数据库的一种实现形式, 它可以提高系统的可靠性、存取效率和改善系统性能。目前的主流数据库管理系统如 o r a c l e 、s q ls e r v e r 、s y b a s e 、d b 2 等都有各自的数据复制工具和针对不同的应用提出 的各种数据复制方法,为分布式数据库的实现增加了技术力量。但复制对大字段的支持 仍然有限,并且受网络环境的影响,复制故障的监测和恢复仍然比较困难。因此,怎样 合理的设计数据库并采取一套有效的机制来维护和管理,成了我们关注的问题。 本文就分布式数据库系统中存储系统的设计以及o r a c l e 9 2 的高级复制机制及其在 实际中的应用进行详细探讨。结合作者参与的贵阳市环境保护局的信息管理系统,对如 何进行存储系统的设计以及o r a c l e 高级复制在复杂网络环境下的部署和维护进行分析, 并借助于较为成熟的分布式关系数据库技术来实现环保信息系统中空间数据的分布式 处理。研究工作主要涉及以下方面: 1 本文对分布式数据库的设计进行了阐述,重点分析了数据库的分片和分配设计,并 且结合项目实例,对如何进行合理的数据分片进行了研究。 2 数据复制过程中,每当不同结点的事务在几乎相同的时问试图更新相同的记录时, 就有可能产生数据冲突。而大多数冲突可以通过预先的设计方案来避免。本文对如 何避免数据冲突问题进行分析。 3 在许多案例中,标准的数据库方案并不支持空间数据的复制,所以具有分知式数据 库要求的g i s 用户必须修改他们的数据模型,建立程序来支持数据的复制。但环保 g i s 系统中包含的一部分空间数据也避免不了参与复制。空间数据的复制问题,即如 何对大字段进行转化是本文解决的问题。 4 高级复制是o r a c l e 数据库的高级功能,它的维护比普通数据库复杂,结合参与的贵阳 环保项目的经验总结了高级复制数据库维护过程中出现过一些问题和解决办法。 关键词:分布式数据库;高级复制;数据冲突;管理信息系统;地理信息系统 a b s t r a c t a tp r e s e n t ,d i s t r i b u t e dd a m b a s et e c h n o l o g yi si n c r e a s i n g l yw i d e l yu s e d t h er e p l i c a t i o n i sak i n do fr e a l i z a t i o nf o r mo fd i s t r i b u t i o n a ld a t a b a s e ,w h i c hc a l li m p r o v et h er e l i a b i l i t yo f t h es y s t e m i m p r o v e ds y s t e mp e r f o r m a n c ea n da c c 嘲e f f i c i e n c y t h em a i n s t r e a md a t a b a s e m a n a g e m e n ts y s t e m ss u c ha so r a c l e ,s q ls e r v e r ,s y b a s e ,d b 2d a t aa n ds oo ha l lh a v et h e i r o w nt o o l sa n dt h ea p p l i c a t i o no f d i f f e r e n tm e t h o d so f d a t ar e p l i c a t i o n ,i n c r e a s e dt h et e c h n i c a l s t r e n g t hf o r t h ed i s t r i b u t i o n a ld a t a b a s er e a l i z a t i o n h o w e v e r ,t h es u p p o at ot h eb i gf i e l di ss t i l l l i m i t e d ,a n db yt h en e t w o r ke n v i r o n m e n t , r e p l i c a t i o nm o n i t o r i n ga n df a u l tr e c o v e r yr e m a i n s d i f f i c u l t t h e r e f o r e , h o wt or e a s o n a b l ed e s i g nt h ed a t a b a s ea n da d o p tae f f e c t i v em e c h a n i s m s t om a i n t a i na n dm a n a g e m e n th a v eb ( o m eo u l m a i l e ro f c o n c e r n t h i sa r t i c l et a k et h ee n v i r o n m e n t a lp r o t e c t i o ns y s t e ma sa l le x a m p l e , w es t u d yt h e d i s t r i b u t e dd a t a b a s es y s t e m ss t o r a g es y s t e md e s i g n ,a sw e l la so r a c l ea d v a n c e dr e p l i c a t i o n i nac o m p l e xn e t w o r ke n v i r o n m e n tf o rt h ed e p l o y m e n ta n dm a i n t e n a n c e , a n dl 埘m a t u r e d i s t r i b u t e dr e l a t i o n a ld a t a b a s e t e c h n o l o g y r e a l i z e s s p a t i a ld a t ap r o c e s s i n g i nt h e e n v i r o n m e n t a li n f o r m a t i o ns y s t e m r e s e a r c hw o r km a i n l yi n v o l v e st h ef o l l o w i n g : 1 t h i sp a p e rd e s c r i b e st h ed i s t r i b u t e dd a t a b a s ed e s i g n ,f o c u s i n go nt h ea n a l y s i so ft h e d a t af r a g m e n t a t i o n , a n dh o wt od e s i g nr e a s o n a b l ed a t af r a g n 舱n t a t i o ni ss t u d i e d 2 i nt h ed a t ar e p l i c a t i o np r o c o s s ,w h e nt h ed i f f e r e n tn o d e st r y i n gt ou p d a t et h es a m e r e c o r d sa tt h e 韶l l l et i m e ,d a t am a yh a v ec o n f l i c t s m o s tc o n f l i c t sc a nb ea v o i d e dt h r o u g hi n a d v a n c ed e s i g np r o p o s a l h o wt oa v o i dc o n f l i c tw a sa n a l y z e di nt h i sp a p e r 3 i nm a n yc a s 嚣t h es t a n d a r dd a t a b a s ep r o g r a md o e sn o ts u p p o r ts p a t i a ld a t ar e p l i c a t i o n , s od i s t r i b u t e dd a t a b a s er e q u i r e sg i su s e r st om o d i f yt h e i rd a t am o d e l ,a n dt oe s t a b l i s h 删u r e st os u p p o r td a t ar e p l i c a t i o n h o w e v e re n v i r o n m e n t a lg i ss y s t e mi n c l u d e ss p a t i a l d a mw h i c h 啪n o ta v o i dp a r t i c i p a t i o ni nr e p l i c a t i o n h o wt oc o n v e r tb i gf i e l dt on o r m a li s s o l v e di nt h i sp a p e r 4 a d v a n c er e p l i c a t i o ni st h eh i g hf u n c t i o no fo r a c l ed a t a b a s e ,a n di t sm a i n t e n a n c ei s m o r ec o m p l e xt h a nt h eo r d i n a r yd a t a b a s o t h i sp a p e rs u m m a r i z e st h ea d v a n c e dr e p l i c a t i o n d a t a b a s ep r o b l e m si nt h em a i n t e n a n c e p r o c e s s k e y w o r d s :d i s t r i b u t e dd a t a b a s e ;a d v a n c e dr e p l i c a t i o md a t ac o n f l i c t ;m i s :g i s 湖北大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所 取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任 何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡 献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的 法律后果由本人承担。 论文作者签名:炎天景 日期:叼年6 月萝日 学位论文使用授权说明 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即: 按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位 论文的印刷本和电子版,并提供目录检索与阅览服务;学校可以允许采用 影印、缩印、数字化或其它复制手段保存学位论文;在不以赢利为目的的 前提下,学校可以公开学位论文的部分或全部内容。( 保密论文在解密后遵 守此规定) 作者签名:w日期:如形多彦 指导教师签名: 虫於 日期:肋75 甚 第一章引言 1 1 本论文选题背景 第一章引言 分布式数据库兴起于2 0 世纪7 0 年代,尤其是在9 0 年代,分布式数据库以其在 分布性和开放性方面的优势获得了众多青睐【i j 。当前,分布式数据库技术日益得 到广泛应用。在纯粹的分布式数据库系统中,所有数据及其支持对象具有单一拷 贝,如果用户访问的数据不在本地,那么数据要通过网络传输到本地数据库中。 由于网络临时故障或拥塞问题,实时传输数据难以保证系统的执行效率。为此, 出现了分布式数据库的复制机制,采用数据副本的方法,即在全部站点存放整个 数据库的副本。复制是分稚式数据库的一种实现形式,它可以提高系统的可靠性、 存取效率和改善系统性能。目前的主流数据库管理系统如o r a c l e 、s q ls e r v e r 、 s y b a s e 、d b 2 等都有各自的数据复制工具和针对不同的应用提出的各种数据复制 方法,为分布式数据库的实现增加了技术力量。但复制对大字段的支持仍然有限, 并且受网络环境的影响,复制故障的监测和恢复仍然比较困难。因此,怎样合理 的设计数据库并采取一套有效的机制来维护和管理,成了我们关注的问题。当前 各种流行的数据库产品提供的复制技术各有不同。0 m d e 【2 】数据复制是o r a c l e 数 据库产品中比较成熟的一项技术。是整个分布式计算解决方案的一个重要组成部 分,但它的维护比普通数据库复杂,特别是在复杂网络环境下的维护。目前,基 于关系数据模型的分布式关系数据库技术在商业数据处理方面已获得了很大成 功,但是,对于地理信息等具有复杂空间关系的数据,其分布式处理技术的发展 还难以满足大型数据库管理的需要,要实现分布式实时分析和处理数据更新有一 定的困难,而环保信息系统的数据既有大量关系型数据,又有丰富的空问数据, 我们可以依托成熟的关系型数据库对空间数据进行处理p i 。 1 2 本论文研究内容和主要工作 本文将以环保系统为例,就分布式数据库系统中存储系统的设计,以及 o r a c l e 高级复制在复杂网络环境下的部署和维护进行详细探讨,并借助于较为成 湖北大学硕士学位论文 熟的分布式关系数据库技术来实现环保信息系统中空问数据的分布式处理。 1 3 本论文组织和结构 本论文共计五个部分,分别讨论了论文的选题背景,分布式数据库的基本概 念和特点,分布式数据库的设计和实现技术,并且给出了项目实例,然后介绍了 o r a c l e 高级复制技术在m i s o i s 中的应用,最后对文中提到的技术进行展望,详 细说明如下: 第一部分引言。介绍论文选题背景,主要研究工作及组织结构 第二部分分布式数据库的介绍。 阐述了当前分布式数据库技术的概念和特点,分析了分布式数据库的模式结 构,其既保留了集中式数据库模式结构的特色,又具有更为复杂的结构。重点说 明了分布式数据库特有的模式级别。 第三部分分布式数据库的设计和实现。 简要地介绍了分布式数据库的设计的基本原则、设计内容和设计目标,重点 的介绍了分布式数据库的设计方法,并且结合项目实例对如何进行数据存储进行 了详细的论述。 ” 第四部分o r a c l e 高级复制技术。 本部分o r a c l e 高级复制技术是分布式数据库系统的核心内容,也是本文的重 点和难点所在。 文章首先介绍t o r a c l e 高级复制的原理和相关术语,对目前o r a c l e 采用的复制 机制也进行了简要的说明。重点介绍了基于o r a c l e 高级复制的企业分布式数据库 方案,并给出项目实例。本部分的核心内容是复制冲突的解决和空间数据的复制 方案。作者针对不同的冲突类型,分别给出了适当的解决方法,在普通的m i s 系 统中,很多数据库系统都提供了数据复制方案,但在c - i s 系统中,标准的数据库 方案并不支持空间数据的复制,所以具有分布式数据库要求的g 1 s 用户必须修改 他们的数据模型,建立程序来支持数据的复制。空问数据的复制问题,即如何对 大字段进行转化是本文将解决的问题。在本部分的结尾,作者结合实际项目总结 了高级复制数据库维护过程中出现过一些问题和解决办法。 第五部分总结和展望。对本论文进行总结和未来发展进行展望。 2 第二章分布式数据库的简介 第二章分布式数据库的简介 2 1 分布式数据库的定义和特点 2 1 1 分布式数据库定义 分布式数据库系统【4 】,是指物理上分布而逻辑上集中的数据库系统。物理上 分布是指分布式数据库系统的数据分布在由网络连接起来的、地理位置分散的不 同站点上,逻辑上集中是指各数据库站点之间逻辑上是一整体,并由统一的数据 库系统进行管理,同时各站点又具有管理本地数据的能力【5 l 。被计算机连接起来 的不同逻辑单位成为站点或结点。这些站点分散在不同的地方,大可为不同的国 家,小可为同一建筑内的不同位置。因此,分布式数据库系统可以看成是:计算 机网络与数据库系统的有机结合。如图2 1 所示:, 图2 1 分布式数据库系统示意图 当一个用户只访问他所注册的那个站点上的数据时,称为本地( 或局部) 用户 或局部应用:如果用户的访问涉及两个或两个以上站点上的数据,则称为全局用 户或全局应用 3 湖北大学硕士学位论文 2 1 2 分布式数据库特点 分布式数据库具有如下三点基本特点嘲: 物理分布性:分布式数据库系统中的数据不是存储在一个站点上,而是分散 存储在由计算机网络联结起来的多个站点上。所以,分布式数据库系统的数 据具有物理分布性。 逻辑整体性:分布式数据库系统中的数据物理上是分散在各个站点上,但这 些分散的数据逻辑上却是一个整体,它们被分布式数据库系统的所有用户 共享,并由一个分布式数据库系统统一管理。这是分布式数据库的。逻辑 整体性”特点,也是与分散式数据库的最大区别。区别一个数据库是分散式 还是分布式,只要判断它是否支持全局应用,如果支持则是分布式数据库。 站点自治性:站点自治性也称场地自治性,是指各站点上的数据由本地的d b i i s 管理,具有自治处理能力,本地d b - i s 可以完成本地局部应用。 由以上三个基本特点,可以导出分布式数据库系统的其他特点,包括: 数据独立性:数据独立性是数据库方法追求的主要目标之一。分布式数据库 系统的数据独立性包括数据的逻辑独立性,物理独立性和分布透明性。分布 透明性指用户不必关心数据的逻辑分片,不必关心数据是否复制及复制的个 数,分布的物理位置,也不必关心局部位置上数据模型的种类,这些全部由 分布式数据库系统来完成。 集中与自治相结合的控制机制:在分布式数据库系统中,同一站点上的局部 用户共享本站点上的数据,并由本地数据库进行管理,而在全局范围内, 全局用户共享系统中各个站点上的数据,这种共享由集中的控制机制统一 管理。 适当增加数据的冗余度【7 】:在分布式数据库系统中,通过数据冗余来提高系统 的可靠性、可用性和改善系统的性能,通过在多个站点上存储数据的副本, 使得当某一站点上的数据破坏时,系统仍可以正常运行。另外,系统还可以 选择数据用户最近的数据副本进行操作,减少通信代价。 事务管理的分布性:数据的分布性必然造成事务执行和管理的分布性。即, 一个全局事务的执行可分解为在若干个站点上的子事务的执行。同样事务 的原子性、一致性、可串行性、隔离性和永久性以及事务的恢复都要考虑分 4 第二章分布式数据库的简介 布性 2 2 分布式数据库模式结构 分布式数据库是基于计算机网络联接的集中式数据库的逻辑集合,其既保留 了集中式数据库模式结构的特色,又具有更为复杂的结构嗍。图2 分布式数据库 模式结构的示意图,该模式结构从整体上可以分为两大部分:下部是集中式数据 库系统的模式结构,代表了各层数据库系统的基本结构:上部是分布式数据库系 统增加的模式级别这四层模式的划分为:全局外模式( 或称全局视图) 、全局概念 层、局部概念层和局部内层【9 l 。四层的划分不仅用于完全透明的分布式数据库系 统,而且适合各种透明性要求的分布式数据库系统。 图2 2 分布式数据库结构图 上图从整体来看,映像4 所在的层下面是集中式数据库的模式结构,代表了各局 部场地上的局部数据库系统的结构,映像4 所在的层上面是分布式数据库系统增 加的模式级别,下面仅就分布式数据库系统增加的模式级别做一简要介绍【l o l : ( 1 ) 全局外模式:它们是全局应用的用户视图,是全局概念模式的子集。 ( 2 ) 全局概念模式:它定义分布式数据库中数据的整体逻辑结构。全局概念模式 中所用数据模型应该易于向其它层次的模式映像。通常采用关系模型。 ( 3 ) 分片模式:每一个全局关系可以分为若干不相交的部分,每一个部分称 为一个片段。分片模式定义片段及全局关系到片段的映像。这一映像是一对多的, 5 分布式t撰库静霄 曩申遗靠挥摩有 湖北大学硕士学位论文 因为一个片段来自一个全局关系,而一个全局关系对应多个片段 ( 4 ) 分配模式:片段是全局关系的逻辑部分一个片段在物理上可以分配到网络 的不同节点上,分配模式定义片段存放位置。分配模式的映像类型确定了分布式 数据库是冗余的还是非冗余的。若映像是一对多的,即一个片段分配到多个节点 存放,则是冗余的:若映像是一对一的,则是非冗余的。根据分配模式提供的信 息,一个全局查询分为若干子查询,每一子查询所要访问的数据属于同一场地的 局部数据库。由分配模式到各局部数据库的映像即是把存储在局部场地的全局关 系或全局关系的片段映像为各局部概念模式。局部概念模式采用局部场地的d b m s 支持的数据模型。分片模式和分配模式及其对应的映像使分布式数据库系统具有 了分布透明性l 川 6 第三章分布式数据库设计技术及实现 第三章分布式数据库设计技术及实现 3 1 分布式数据库系统的设计内容 集中式关系数据库系统设计的内容包括:数据库系统设计和围绕数据库展开 的应用设计两个部分。 分布式数据库系统设计的内容也可以类似的分为:分布式数据库系统的设计 和围绕分布式数据库展开的应用设计两个部分。 分布式数据库的设计可以基于现有的集中式数据库设计实现技术,只不过在 设计数据库时,要从分布式数据库整体的角度来统一考虑。在分布式数据库设计 中,核心问题是全局模式以及各个站点上的概念模式设计问题,其中的关键问题 是如何在全局模式与各个站点上的概念模式之间建立映象,从而实现数据分布透 明性。这就是分布式数据库设计中要解决的数据分片设计和数据片段分配设计问 题。 分布式数据库系统的设计远比集中式数据库系统的设计困难和复杂。为了满 足应用需求和优化性能,常常会产生许多集中式数据库设计所没有的新问题,例 如站点互连、数据和程序在站点之间的优化分布等。虽然分布式数据库系统设计 方面的经验有待积累,但作为应用研究领域,对某些问题已经进行了广泛的研究, 并取得了一定的成果。如在分布式数据库设计中,规定了数据分布的准则、设计 方法等。 数据库系统的核心部分是数据库设计,数据库设计的主要问题是概念模式 ( 描述数据库应用所使用的全部数据) 和内模式( 也叫物理模式,描述概念模式 映射到存储区域,并确定合适的存取方法) 的设计。从前面讨论的分布式数据库 系统模式结构的论述可知,这两个问题在分布式数据库中可以转化为全局模式设 计和每个站点的本地模式设计的问题。其中的关键是数据库的全局模式应如何划 分,并映射到合适的站点上。这就产生了分布式数据库设计的两个新问题:数据 的分片设计【1 2 】和片段的位置分配设计。 这两个问题在概念上是有差别的:分片设计研究的是全局模式分片的。逻辑 准则”,而片段的位置分配设计研究的是处理数据在各个站点上的“物理布局”。 7 湖北大学硕士学位论文 但是,在对待这个差别时必须谨慎,因为通常这两个问题是相互关联的,不可能 单独考虑而能确定最优的分片和分配 另外。在需求设计分析中,除了弄清数据需求和应用需求外,由于应用提出 的要求会影响到数据的分片设计和片段的位置分配设计。因此,在分布式数据库 系统设计中,为使分片设计和片段的位置分配设计得到的模式能够高效的支持应 用,还要知道应用的确切要求,包括: 各个应用的“原发站点( s i t eo fo r i g i n ) ,即发出该应用的站点 各个应用在每个站点被激活的频率( 单位时间内被激活的次数) 。 各个应用对所要求访问的每个数据对象的访问次数、类型和统计分布。 3 2 分布式数据库设计的目标 在理想的情况下,用户可不用关心数据的物理分布,由系统负责处理在不同 站点上的数据分布。然而,数据的实际分布情况会影响系统的整体性能,访问多 个数据对象所需的时间和费用,会因为这些数据对象是存在于同一个站点上,还 是分布在多个站点上而有很大差别。如果分布在多个站点上,就要进行站点与站 点之间的通信,因而用户可能感到明显的延迟现象。另外,数据是否被复制、复 制副本的多少也会影响系统的可靠性和可用性。同一数据的每个副本在故障独立 假设下都是可用的,可以提高系统的可靠性。数据复制会影响性能,因为如果对 数据进行了更新,就需要保持该数据的所有副本都做同样的更新,才能保持数据 的一致性。因此d b m s 的数据库设计必须仔细考虑数据是否分片、分段的复制以及 数据的分布。甚至在分布式数据库管理系统支持比较高的分布透明性时也要如 此。分布式d b m s 的完善程度常常通过提供给用户的分布透明度来衡量。由此可见, 分布式数据库设计的目标除了包括集中式数据库设计中的目标外,还要包括: 1 分布式数据库的本地性或近地性 分布式数据库设计中的一个主要原则是使数据和应用实现最大程度的本地 性。虽然分布式数据库管理系统能使站点间的通信更加完善,但是开发一个分布 式数据库系统的主要目的是:通过尽可能的使数据靠近使用该数据的应用来进行 分配,从而提高处理的本地性或近地性来减少通信量。因此,在一个精心设计的 分布式数据库系统中,9 0 的数据应当在本地站点找到,而只有1 0 的数据需要在 8 第三章分布式数据库设计技术及实现 远程站点上进行访问然而,很少出现数据和应用能被清晰划分和分配到某一特 定站点。更为常见的是由于几个应用需要从不同站点访问同样的数据,为了提高 系统的本地性,并发度和可靠性,在本地保存多个站点的副本,但是由于副本的 增加又会对数据的一致性产生危害,因此副本的数量要有所限制。这时候往往需 要折中考虑。在这种情况下,最有效的设计是确保数据对尽可能多的应用具有本 地性。可以采用这种方法:对每一种可供选择的分片方法和片段的分配设计方法 都统计出本地访问和远程访问的次数,然后从中选择一个最佳的方案 2 分布式数据的可用性和可靠性 数据的多副本,使只读应用具有高度的可用性,而且数据的任何一个副本不 能使用时,可以方便的使用另一个站点中的副本进行恢复。分布式数据库系统的 可用性和可靠性显然是要优于集中式数据库系统。 3 工作负荷分布 分布式计算系统的一个重要特征使把工作负荷分布到网络中的各个站点上。 分布工作负荷的目的是充分利用每个站点的计算机的能力和资源,以提高应用执 行的平行速度。 4 存储的能力和费用 数据的分布会受到个站点的存储能力的影响。在网络中可以有专门用于存储 数据的站点,也可能有不支持大容量存储的站点。一般来说,数据存储的费用和 c p u ,1 o 以及传输的费用相比是不重要的,但是必须考虑每个站点可用存储空 间的限制。 上述的设计目标都要达到显然不是容易的事情,在理论上也是一件很困难的 事情。因此,可以将上面的某些特征考虑为约束条件而不是目标,这样有助于系 统的设计与实现。可以在初始设计时仅考虑最重要的准则,而在以后优化中再考 虑其他准则。这就要求分布式数据库设计者既能够预测表征数据对应用的本地性 的一些逻辑性质,又能预测借助每一个站点上执行请求的频率来测量应用“负载” 的定量信息【j 3 】 3 3 数据库设计方法 分布式数据库设计一般需要经过下面几个阶段:需求分析、概念设计、逻 辑设计、分布设计和物理设计。 9 湖北大学硕士学位论文 需求分析涉及收集用户数据库应用的非结构规格说明,并产生一种无歧义的 定义和在设计数据库中要考虑的元素分类,这种信息被收集在设计数据库字典 中。概念设计,有时进一步分成视图设计和视图综合,产生全局、综合数据库模 式的一种概念规格说明和在此模式上执行应用的概念规格说明。逻辑设计将概念 模式转换成给定的d b m s 类型的数据库模式。分布设计是结合在概念设计之中的, 将全局的,与各站点无关的数据进行分片,并分配到不同的站点上。分布设计包 括分片设计和片段分配设计。物理设计根据概念设计和分布设计的结果,产生实 现数据库物理访问结构的定义。 分布式数据库系统的设计可以采用两种方法:组合法和重构法。 1 、组合法 组合法是指利用现在的计算机网络和独立存在于各个站点上的现存的数据库 系统,建立一个分布式协调管理系统,将各个站点上独立的数据库系统集成为一 个统一的分布式数据库系统。采用这种方法建立分布式数据库系统,一方面要对 网络系统的功能进行剖析,另外,还需要对各个站点上现存的数据库系统进行剖 析,解决各站点上不同数据模型的相互访问,实现统一的数据一致性和完整性问 题。当实现的系统较小时,采用这种方法比较容易,当系统较大时,尤其是当各 个站点上的数据模型不同时,采用该方法是相当困难的。 2 、重构法 重构法是根据系统实现环境和应用要求,按照分布式数据库系统的设计思想 和方法,从总体设计做起,包括各个站点上的数据库系统,重新建立一个分布式 数据库系统这种方法在于,各个站点上的数据库系统与全局数据库管理系统是 统一设计而成的,因此可以很好地解决数据的一致性、完整性和可靠性。 3 4 数据存储 数据分片和分布( 分配) 是分布式数据库中有关数据存储两个重要概念,分 布式数据库大部分问题均与数据分片和分布有关,它对整个系统的可用性、可靠 性、及效率都有极大的影响,同时也与分布式数据库系统的其他方面密切相关, 尤其是分布式查询处理问趔。 1 0 第三章分布式数据库设计技术及实现 3 4 1 分布式数据库的数据分片 数据分片( d a t af r a g m e n t a t i o n ) 也称数据分割,是分布式数据库的特征之一 在一个分布式数据库中,全局数据库是各个站点上局部数据库的逻辑整体,而各 个局部数据库中的数据是由全局数据库的某种逻辑分割而来。例如,以关系d 阴s 为例,一个关系( 表格或视图) 描述了某些数据之间的逻辑相关性,但是,因为不 同站点的用户需要访问的该关系中的元组( 记录) 可能不同,所以需要对这个关系 进行分割,将分割后得到的各部分元组( 记录) 称为该关系( 表或视图) 的一个逻辑 片段,存放在相应的站点上。这样减少网络通信量,从而提高效率。 数据分片有三种基本方法旧,分别如下: 1 水平分片:按特定条件把全局关系的所有元组分成若干个互不相交的子集, 每一个子集为全局关系的一个逻辑片段,简称为片段。它们通过对全局关系施加 选择运算得到,并可通过对这些片段的合并操作来恢复该全局关系。 2 垂直分片:将全局关系( 表或视图) 的属性集( 字段集) 中的若干属性作投影运 算,即得到全局关系的一个垂直分片要求全局关系的每一个属性至少映射到一 个垂直片段中且每一个垂直分段都包含全局关系的键 3 混合分片:水平分片和垂直分片的混合 对数据库的各类分片,满足如下规则: 完备性条件:必须把全局关系的所有数据及元组映射到各个分片中,不允许 有属于全局关系的数据却不属于它的任何一个片段。 可重构条件:必须保证能够由同一个全局关系的各个片段来重建该全局关 系。 不相交条件:要求一个全局关系被分割后所得的各数据片段互不重叠( 对于 水平分片) 或互不包含主键重叠( 对于垂直分片) 3 4 2 分布式数据库的数据分布 数据分布是分布式数据库的又一特性。所谓数据分布是指分布式数据库中的 数据不是存储在一个站点的计算机存储设备上,而是根据需要将数据划分成 逻辑片段,按某种策略将这些片段分散地存储在各个站点上【1 6 1 。 湖北大学硕士学位论文 数据分布的策略有: 1 集中式:所有数据片段都安捧在同一个站点上这种分布策略因系统的数据 都存放在同一站点上,对数据的控制和修改都比较容易,数据的一致性和完整 性能够得到保证但由于对数据的检索和修改都必须通过这个站点,使这个站 点负担过重。系统对这个站点的依赖性过多。一则容易出现瓶颈,二则旦这 个站点出现故障,将会使整个系统崩溃,系统可靠性较差 2 分割式:所有数据只有一份,它被分割为若干个逻辑片段,每个逻辑片段被 指派在某个特定的站点上。这种分布策略可充分利用各个站点上的存储设备, 数据存储量大。在存放数据的各个站点上可自治的检索和修改数据,发挥系统 的并发操作能力。同时,由于数据是分布在多个站点上,当某部分站点出现故 障时,系统仍能运行,提高了系统的可靠性。对于全局查询和修改,所需的时 问会比集中式长。 3 复制式:全局数据有多个副本,每个站点都有一个完整的数据副本。采用这 种策略的系统的可靠性高,响应速度快,数据库的恢复比较容易,可以从任何 一个站点得到数据副本,但是要保持各个站点上的数据一致性,做到数据修改 的同步需要更高代价。 4 混合式:这种策略兼顾分割式和复制式的做法,将数据分为若干分逻辑片 段,并将各逻辑片段分别存储在各个站点上,同一个片段可以有多个副本分布 在不同的站点上。这种方法灵活性好,能提高系统的性能,但增加了系统实现 的复杂性。 3 4 3 数据存储设计实例 总结以上得出,在分布式数据库中,数据存储通过以下三种途径实现f 7 1 : 复制:系统维护关系的几个完全相同的副本,这些副本存储在不同的结点上。 分片:关系被划分为几个片段,各个片段存储在不同的结点上。 复制+ 分片:关系被划分为几个片段,系统为每个片段维护几个副本。 以下结合实例,谈谈存储系统的设计。 贵阳市环境保护局数据管理的现状如下:在贵阳环境保护管理信息系统中, 市局与各区县局处于不同的地理位置,在业务上各区县局处理各自的数据,但也 1 2 第三章分布式数据库设计技术及实现 需要彼此之问数据的交换和处理;市局有权管理所有区县数据。 从全局应用的角度出发,将这些数据库自下而上构成分布式数据库系统,实 现全局数据的完整性和一致性,各区县局仍然存放本机构的数据,市局的数据库 则存放所有业务数据,并对数据进行完整性和一致性的检查,这种做法虽然有一 定的数据冗余,但在不同场地存储同一数据的多个副本,能提高系统的可靠性和 可用性,也提高了局部应用的效率,减少了通讯代价。该分布式数据库系统可以 在对当前机构影响最小的情况下进行扩充,增加新的区县机构时只需增加一个节 点就可以了,同时也使得各处理机之间的相互干扰降到最低。 结合该系统,因为各数据库之问存在一定的数据冗余,又存在着差异,我们 使用了复制+ 分片的方式进行数据存储。 在分布式数据库系统中,将关系分片,有利于按用户需求组织数据的分布, 目前的分片方式有水平分片、垂直分片、导出分片、混合分片等四种。我们根据 不同的数据关系采用了不同的分片方式: ( 1 ) 在市局与区县局的数据关系中,由于区县局的数据是市局数据的子集,我 们采用了水平分片的方式,通过并运算实现关系的重构。 ( 2 ) 在市局数据库服务器与w e b 数据库服务器的数据关系中,数据是按照其应用 功能来划分的,所以我们采用了垂直分片的方式。 根据系统的功能需求,数据及其使用情况分为以下两类: 类型一区县代码、经济类型代码、行业分类大类代码、国民经济行业分类 代码、大气功能区名称代码表、监测项目代码、流域水系水体水域代码等系统级 代码,主要由各局管理人员维护。 类型二贵阳市工业企业污染源普查数据、贵阳市医疗机构普查数据、贵阳 市服务业普查数据、贵阳市五金加工行普查数据、贵阳市养殖业普查数据等污染 源普查数据及其办公自动化数据。市局与区县局分别管理各自管辖区域内企业的 数据。 工业污染源普查基本表如表3 - 1 所示: 1 3 湖北大学硕士学位论文 表3 1 工业污染源普查基本表( t aai n d u s t r y ) a 胃刮 et a b l e t a a i n d u s t r y ( o w n i dv a r c h a r 2 ( i 铆n o tn u l l 一内码 u n i c o d ev a r c h a r 2 05 ) n o tn u l l , 一统一编码 y e a r sv a r c h a r 2 ( 4 )n o tn u l l ,一年份 e t p s c a l ev a r c h a r 2 ( 8 )n o tn u l l ,一企业规模( 特大型等) r e g i s t k i n dv a r c h a r 2 ( 3 )n o tn u l l , 一登记注册类型代码( 国 家标准代码) t o t a l v a l u en u m b e r ( 1 4 2 ) d e f a u l t0 ,一工业总产值( 现价x 万 元) w o r k d a y si n t e g e rd e f a u l t0 ,年j 下常生产天数( 天) e n e r g y u s e q t yn u m b e r ( 1 4 ,2 ) d e f a u l to 一能源消耗量( 吨标煤) w a t e r u s e q t yn u m b e r ( 1 2 ) d e f a u l t0 ,一总用水量( 吨) p o w e r u s e q t yn u m b e r ( 1 4 ,2 ) d e f a u l t0 , 用电量( 力- 度) p u d d l i n g n u mi n t e g e r d e f a u l t0 , 一工业窑炉数( 个) g a s d e v n u m i n t e g e rd e f a u l t0 一工艺尾气捧放装置数 量( 个) g a s p o r t n u mi n t e g e rd e f a u l to 一废气捧放口数量( 个) o口oo o o o o o o ooao口oo d i s t r i c t c o d ev a r c h a r 2 ( 6 ) ,一行政区划代码 p u b l i s h c o d e v a r c h a r 2 ( 6 ) 一数据复制代码 c o n s t rai n tp kt aai n d u s 啊wp r i m a r yk e y ( o w n i d ,u n i ( 2 0 d e y e a r 鳓 ) ; 其中d i s t r i c t c o d e ( 行政区划代码) 是体现与物理位置有关的数据, p u b l i s h c o d e ( 数据复制代码) 便于灵活使用复制条件,这样定义有利于分布 式数据库的水平分片处理。 1 4 第四章o r a c l e 高级复制 第四章o r a c l e 高级复制 在纯粹的分布式数据库系统中,所有数据及其支持对象具有单一拷贝,如果 用户访问的数据不在本地,那么数据要通过网络传输到本地数据库中。由于网络 临时故障或拥塞问题,实时传输数据难以保证系统的执行效率。为此,出现了分 布式数据库的复制机制,采用数据副本的方法,即在全部站点存放整个数据库的 副本。复制是分布式数据库的一种实现形式,它可以提高系统的可靠性、存取效 率和改善系统性能【1 8 1 。 当前,分布式数据库系统中广泛使用了数据复制技术,几乎所有的大型数据 库系统都提供了自己的数据复制解决方案和数据复制组件。分布式数据库复制技 术为分布式数据库系统提供了许多优势,在实践中也有大量现实的需要。以下将 结合分布式数据库的一些基本概念,数据复制的基本概念和原理对分布式数据库 复制技术在实践中的研究与应用进行比较深入的探讨。 4 1o r a c l e 数据复制概述 4 1 1o r a c l e 的复制原理及相关术语 复制,顾名思义就是将数据库中的数据拷贝到不同物理地点的数据库中以支 持分布式应用- 它是整个分布式计算解决方案的一个重要组成部分。针对复制存 在同步复制和异步复制的问题【嘲,它们的概念如下: 同步复制,复制数据在任何时间在任何复制节点均保持一致。如果复制环境 中的任何一个节点的复制数据发生了更新操作,这种变化会立刻反映到其他所有 的复制节点。这种技术适用于那些对于实时性要求较高的商业应用中。 异步复制,所有复制节点的数据在一定时间内是不同步的。如果复制环境 中的其中一个节点的复制数据发生了更新操作,这种改变将在不同的事务中被传 播和应用到其他所有复制节点。这些不同的事务问可以问隔几秒,几分种,几小 时,也可以是几天之后。复制节点之间的数据临时是不同步的,但传播最终将保 证所有复制节点间的数据一致,根据实际应用,在配置复制时可以设置同步的时 间间隔。 1 5 湖北大学硕士学位论文 在o r a c l e 系统中,每台计算机称为一个节点,每个节点可以是数据库服务器, 也可以是客户机。每个数据库服务器都运行着一个o r a c l e 数据库管理软件系统 但在o r a c l e 复制环境中,并不是每个服务器都有自主的表和支持对象,具有来自 主数据表和相应支持对象的数据库服务器称为主数据库,另外一些数据库没有来 自主数据表而是通过建立数据库连接和复制组与主数据库建立联系。存放主数 据库的部分或全部数据的快照,这些存放快照数据的数据库称为快照库或从数据 库。通过设置不同的复制组可以将主数据库中的不同表保存在不同的快照库中也 可以将主数据库中的同一个表中的不同数据记录保存在不同的快照库中。主数据 库中的表为主表,快照数据库中的表为快照表,设置有主数据库的计算机为主 站点,配置了快照库的计算机为快照站点或从站点。在系统中,如果只有一个主 站点,而有多个从站点,则称为一主多从结构;如果有多个主站点和多个从站点, 则称为多主多从结构。 o r a c l e 系统采用定时刷新的方法来保持快照库和主数据库中数据的一致性 和完整性。它提供了两种刷新方法:完全刷新和快速刷新。所谓完全刷新就是用 主数据库中的数据将快照数据库的数据完全更新一遍,快速刷新则是先鉴别出上 次刷新以来变化了的数据,然后基于这些变化了的数据对主数据库或快照库数据 进行更新,因此快速刷新也称为增量复制。数据的变化可以发生在主数据库也可 以发生在快照库,依据是否允许在快照站点对侠照库中数据进行更新操作。 o r a c l e 又将复制分为基本复制和高级复制捌两种方式。 1 基本复制 所谓基本复制是指在复制环境中,快照表是只读表,快照表中的数据只能通 过刷新操作从主数据库中获得。在快照站点只能对快照表中的数据进行查询而不 能进行更新操作。这种系统允许在需要数据更新时能够对主站点数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 七下名校考题试卷及答案
- 2024年黄山市特岗教师招聘真题题库带答案解析
- 2025年三门峡市特岗教师招聘笔试真题汇编附答案解析(夺冠)
- 2025年山西名胜古迹题库及答案
- 2025年博尔塔拉蒙古自治州特岗教师招聘真题汇编附答案解析(夺冠)
- 2023年秦皇岛市特岗教师招聘考试真题汇编附答案解析
- 特岗考试题型分析及答案
- 2025年铜仁地区特岗教师招聘考试真题汇编及答案解析(夺冠)
- 2025年菏泽市特岗教师招聘真题汇编带答案解析
- 2025年阳江市特岗教师笔试真题题库及答案解析(夺冠)
- 2025年消防人员执法资格及相关法律知识考试题库及答案
- 医院检验科消防知识培训课件
- 国网南瑞集团招聘考试真题2025
- 堤防工程施工规范(2025版)
- 2025年科创板开户测试题及答案
- 家电维修维护数据管理细则
- 生态文明施工方案
- 肉鸽产业园项目可行性研究报告
- 步兵引导打击课件
- 2025隧道工程施工合同范本
- 静疗专项测试题含答案
评论
0/150
提交评论