已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要随着网络技术和移动通信技术的发展,基于移动计算设备的应用已经越来越普及。人们广泛使用p d a 、智能电话等移动手持设备随时随地进行商务活动。为了适应移动应用的这一发展,移动数据库技术应运而生。一个移动数据库系统的主要需要解决的问题是:如何保证用户在断接的情况下能够继续访问数据库的数据并且如何在系统恢复连接的情况下能够保证数据的一致性,这是同步复制的主要任务。事务级i j 步机制是以事务作为同步处理的基本单位,它保证了事务的原子性,数据库一致性则依赖于同步过程中所采用的冲突检测和消解算法。凶此,事务级i - j 步复制是一种理想的同步处理方式,它已成为移动数据库研究领域中的一个重要研究方向。同时由于移动环境的限制,事务级l 一步复制技术需要解决好移动客户机的频繁断接,允许用户随意移动,提供对交互式事务的支持,减少网络通信量等以更好地消除了移动计算环境给数据库应用和事务同步处理带来的不利影响。移动数据库系统s w i f t d b 是东南大学数据库实验室自行开发的移动数据库系统。本文重点研究了s w i t t d b 中事务级同步处理策略,并对移动事务处理系统中各个模块进行设计和实现,同时研究了移动端事务管理和i j 步过程,上载移动事务的优化算法以及s w i f l d b 中核心部件i j 步服务器的关键技术,包括如何定义移动事务、如何实现灵活的数据下载、如何解决同步过程中移动端的断接和过区切换、如何解决冲突维护数据一致性以及如何把移动事务反映到中心数据库等。其中同步服务器中的事务管理模块屏蔽了计算终端同步过程中的移动性:冲突检测模块采用冲突检测机制解决了多个移动终端在提交移动事务时的更新冲突,保证了中心数据库的一致性:数据访问模块屏蔽了后台中心数据库系统的异构性,实现事务在不同的数据源中透明地执行。关键词t 移动计算、移动数据库、同步、复制、事务a b s t r a c tw i t hc o m p u t e rn e t w o r kt e c h n i q u e ,w i r e l e s sc o m m u n i c a t i o nt e c h n i q u ed e v e l o p i n g ,t h ea p p l i c a t i o nb a s e do nm o b i l ec o m p u t i n gd e v i c e si sm o r ea n dm o r ep o p u l a r p e o p l ea l w a y sd o i n gb u s i n e s sa f f a i r sb yu s i n gm o b i l ed e v i c e ss u c ha sp d a ,s m a r tp h o n e i no r d e rt ob es e a s o n e dw i t ht h ed e v e l o p m e n to ft h em o b i l ea p p l i c a t i o n ,t h et e c h n o l o g yo fm o b i l ed a t a b a s ec o m e su p t h em a i np r o b l e mw h i c hm o b i l ed a t a b a s es y s t e mh a st od e a lw i t hi sh o wt os u p p o r td i s c o n n e c t e do p e r m i o na n dh o wt om a i n t a i nc o n s i s t e n c yw h e nt h em o b i l ec l i e n tb e g i nt oc o n n e c tt os e r v e r , t h i si sa l s ot h et a s ko ft h es y n c h r o n i z a t i o n t r a n s a c t i o ns y n c h r o n i z i n gd u p l i c a t i o nm e c h a n i s mw h i c hu s e sg r a n u l a r i t yo ft r a n s a c t i o nc a nk e e pt h ea t o m i c i t yo ft r a n s a c t i o na n dm a k e su s eo fc o n f l i c td e t e c t i o na l g o r i t h mt om a i n t a i nt h ec o n s i s t e n c yo ft h ed a t a b a s e ,s oi ti sa l li d e a ls y n c h r o n i z i n gm e t h o da n db e c o m e sa l li m p o r t a n tr e s e a r c ht h e s i s m e a n w h i l eb e c a u s eo fl i m i t a t i o no ft h em o b i l ee n v i r o n m e n t ,t r a n s a c t i o ns y n c h r o n i z i n gd u p l i c a t i o nt e c h n o l o g yh a st os u p p o r tt h ed i s c o n n e c t e do p e r a t i o na n dm o b i li t yo fm o b i l ec l i e n t ,s u p p o r tt h ei n t e r a c t i v et r a n s a c t i o na n dr e d u c ew i r e l e s sc o m m u n i c a t i o nc o s tt or e m o v et h ed i s a d v a n t a g e o u si m p a c to f m o b i l ee n v i r o n m e n to nt h ea p p l i c a t i o no fd a t a b a s ea n dt r a n s a c t i o ns y n c h r o n i z i n gd u p l i c a t i o n m o b i l ed a t a b a s es y s t e ms w i f t d bi sam o b i l ed a t a b a s em a n a g e m e n ts y s t e md e v e l o p e db yd a t a b a s el a bo fs o u t h e a s tu n i v e r s i t y t h i sp a p e rf o c u s e so nt h es t r a t e g i e sa n dr e a l i z a t i o no fm o b i l et r a n s a c t i o ns y n c h r o n i z a t i o ni nt h es w i f t d b a tt h es a m et i m e ,t h i sp a p e rr e s e a r c h e st h em a n a g e m e n to ft r a n s a c t i o na n ds y n c h r o n i z a t i o np r o c e s so fm o b i l ec l i e n t ,t h eo p t i m i z a t i o na l g o r i t h mo fu p i o a d i n gm o b i l et r a n s a c t i o na n dt h ek e yt e c h n o l o g i e so fs y n c h r o n i z a t i o ns e r v e ri nm o b i l ed a t a b a s es y s t e ms w i f i d b ,i n c l u d i n gh o wt od e f i n em o b i l et r a n s a c t i o n s ,h o wt or e a l i z ef l e x i b l ed a t ad o w n l o a dp r o c e s s ,h o wt or e s o l v em o b i l i t ya n dd i s c o n n e c t i o no fm o b i l ec l i e n t sd u r i n gs y n c h r o n i z a t i o n h o wt or e s o l v ec o n f l i c t sb e t w e e na l lt h eh o s t sa n dh o wt oi m p a c tm o b i l et r a n s a c t i o n st oc o n s o l i d a t e dd a t a b a s e t h r o u g ht h ei n t r o d u c t i o no ft r a n s a c t i o nm a n a g e m e n tm o d u l ei ns y n c h r o n i z a t i o ns e r v e r , t h em o b i l i t yo fc o m p u t i n gt e r m i n a li ss h i e l d e d ;b yu s i n gt h ec o n f l i c td e t e c t i n gm o d u l eo ft h es y n c h r o n i z a t i o ns e r v e r ,t h eu p d a t i n gc o n f l i c t sa m o n gm o b i l et e r m i n a l sw h i l es y n c h r o n i z i n ga r es o l v e da n dt h ec o n s i s t e n c yo ft h ec e n t r a ld a t a b a s ei sm a i n t a i n e d ;b yu s i n gd a t aa c c e s sm o d u l e ,t h eh e t e r o g e n e i t yo fb a c k g r o u n dc e n t e rd a t a b a s ei ss h i e l d e da n dt r a n s a c t i o n sa r ee x e c u t e di nd i f i e r e n td a t a s o u r et r a n s p a r e n t l y k e y w o r d s :m o b i l ec o m p u t i n g ,m o b i l ed a t a b a s e ,s y n c h r o n i z a t i o n , d u p l i c a t i o n ,t r a n s a c t i o ni i东南大学学位论文独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。研究生签名:东南大学学位论文使用授权声明东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权东南大学研究生院办理。研究生签名:师签名:舞乏多髻日期:加鸭辋? 2 j l i第一章绪论1 1 研究背景第一章绪论随着网络和计算机技术的迅速发展,人们希望能在任何时间、任何地点访问任何数据的需求已逐渐成为现实,信息系统正在走出传统纳机房和桌面,帮助用户随时随地获取相关信息,做出正确决策。要实现这种崭新的移动计算模式,必须得到移动数据库系统的支持。这将使得移动计算不再只是些简单的应用,也可以进行一些数据库系统特有的事务处理,随时获得仓、i k 数据库中的最新数据,同时将已经修改的数据复制到企、j k 数据库中,从而使食业信息系统具有移动计算的能力。移动数据摩技术涉及数据痒技术、移动计算技术、移动通讯技术等多个学科领域,目前移动数据摩已成为国际上一个十分活跃的研究领域,引起了越来越广泛的关注。在国外,许多著名的大学,如斯坦福大学、普渡大学、卡耐基梅隆大学等,都梢继组织了专门的研究课题组,并取得了很多有应用价值的研究成果。在我国,中国人民大学、东北大学、国防科技大学、东南大学等学校都不约而同地展开了移动数据库领域的研究工作,并实现了相关原型和产品。国内外的数据库厂商也对移动数据库的研究十分关注,一些著名的数据库厂商都把开发移动数据库以及梢应的应用软件作为一个重要的发展方向,依托于自身的关系数据库开发相关的各具特色的移动数据库产品,相应的产品有o r a c l e 公司的o r a c l el i t e ,i b m 公司的d b 2ev e r y w h e r e ,s y b a s e 公司的u l t r a l i t e ,m i c o r s o f t 公司的s q ls e r v e rc e 等等。同步复制技术在移动数据库的解决方案中处于关键地位。由于无线网络的频繁断接和网络费用等原凶,移动数据库管理系统采用复制技术把用户关心的数据从数据库服务器的中心数幂库下载到移动瑞,形成数据副本,用户就可以离线地通过移动计算设备来浏览和修改这些数据。但这样就会造成移动设备数据副本与中心数据库数据暂时的不一致,因此还需要提供一系列的方法来最终消除这种不一致。通过这些方法,当移动设备与网络再次连接时能够将本地数据副本上进行的更新反映到中心数据库中,同时将中心数据库中的最新数据下载到移动设备,使移动设备的本地数据副本_ 和中心数据库取得一致。这种消除不一致的过程就称为同步过程。通过同步处理过程,移动数据库将与远程数据库服务器相互协作,保证数据的一致性。目前在移动数据库系统同步复制处理方面,人们进行了大量的研究,并提出了很多模型与算法。根据同步处理的基本单位,这些模型和算法大致分为三类,即数据缎同步机制、语句级同步机制和事务级同步机制。数据级同步复制以元组作为同步处理的基本单位,同步时将各自移动数据库中元组的最新值彼此复制更新,同步处理过程中没有事务的概念,因此不能支持移动端具有语义的事务操作,不能保证事务的原子性和数据库的一致性。语句级同步处理过程中也没有考虑事务的概念,因此也4 i 能保证数据库的一致性。由于数据级同步处理无法完成对移动分布式事务的支持也无法解释操作语义,以及它和语句级同步处理都不能保证数据库的一致性,因此在同步过程中引入事务级处理粒度。事务级同步机制以事务作为同步处理韵基本单位,移动端首先将数据下载并保存在移动数据库中,移动数据库在本地执行事务对保存事务日志信息,当移动端和同步服务器重新连接时,移动端上载移动事务到同步服务器,然后同步服务器对移动端的同步请求以事务为单位逐一处理,按照一定算法全局提交或撤销这些事务,其同步机制保证了事务的原子性,数据库一致性则依赖于同步过程中所采用的冲突检洲和消解算法。因此事务级同步复制是一种理想的同步处理方式。其已成为移动数据库研究领域中的个重要研究方向。然而,由于移动计算环境的限制,事务同步处理过程需要考虑移动环境的特点,例如由于移动端频繁断接,移动事务通常属于长事务;在移动事务执行或同步的过程中,移动端位置的改变会带来复杂的过区切换问题;由于网络带宽的限制,同步时应尽量减少网络通讯量;移动事务执行时更容易出错,且要访问更加复杂的数据资源。因此,需要采取相应的策略来解决事务级同步处理中存在的问题,提高移动数据库系统的可靠性和可靥性,提高移动数据库系统的效率,有着重要的意义。东南大学硕j 二学位论文1 2 研究现状对移动数据库系统的事务级同步复制技术,人们已经进行了大量的研究,并提出了许多模型与算法,如两级复制模型、虚拟主副本模型1 2 j 、三级复制机制| 3 1 等。两级复制模型是解决移动计算环境断连问题的一种有效方法,但移动端断接期间执行的暂态事务需要在基结点上作为基事务鼋做,因而增加了系统的负荷,当移动用户的规模增大时,系统的性能会受到很大的影响,为了克服这些缺陷,文献【4 】对两级复制机制进行了改进,提出了一种基于语义的事务操作合并算法。然而,这些工作大部分均没有讨论冲突处理问题。某些工作( 如b a y o u l 5 1 1 6 1 系统) 虽然研究了冲突处理问题,但需要人工依据系统的具体特点来定制冲突处理函数,因此影响了系统的通用性和适应性。文献【7 】提出了一种有效的移动复制冲突处理模型一多版本冲突消解模型。该模型在数据库服务器上管理数据对象的多个版本,并提供了数据快照一级的事务隔离性。根据文献【8 】的结论,这一隔离级别不能完全保证事务调度的可串行性。从事务l 一步处理机制的特点以及模型中可以发现如下几个问题:所有的事务都要作为暂态事务和基事务分别在移动结点和i 司步服务器上执行,并且每个暂态事务都要进行冲突检测,系统开销大,增加了同步服务器的负荷;在一个移动结点上,暂态事务的执行结果对其他暂态事务来说是可视的,这在某种程度上提高了系统的可用性,但也增加了级联回滚的可能性,降低了整个系统的同步性能;为了在移动设备上保存完整的移动事务日志,要占用较多的移动设备存储资源,特别是在进行事务口志传输时,要在通讯带宽较低的无线网络上传送大量事务日志,通信代价很高,在实际应用中受到了移动计算环境诸多凶素的限制。移动端在两次同步之间执行的暂态事务序列可以看成是一个移动事务。由于移动计算环境的限制,移动事务的同步处理需要考虑移动环境的特点,例如山于移动端频繁断接,移动事务通常属于长事务;在移动事务执行或同步的过程中,移动计算机位置的改变会带来复杂的过区切换问题:移动事务执行时更容易出错且要访问更加复杂的数据资源等等。凶此在移动事务处理方面,人们针对这些问题进行了大量的研究,提出各种移动事务模型。k a n g a r o o 事务模型9 j 允许移动事务随着移动结点的移动而移动,能够较好地解决事务的移动性问题,但不能在移动客户机上执行自治操作,对事务的弱连接性支持不够。m d s t p m 模型i io j 主要研究了多数据库系统中移动事务的执行过程,这种事务模型不支持交互式事务,也不支持事务的迁移和移动。0 2 p l 。m t 模型【j 提供了一种灵活的移动事务发送方式,但在操作序列结果返回之前移动终端不能离开当前网络,对移动性有限制,而r 由于采用了两段锁协议,数据可能会被长时间卜锁,降低了服务器并发处理的效率。0 2 p c m t 模型l l 副克服了0 2 p l m t 的弊端,对已有模型做了进一步的改进,解决了对事务跨区移动的限制,但某些情况下仍1 i 能满足严格的a c i d 准则,并且移动客户机上执行的暂念事务在服务器上重新执行时的提交率不是很高。移动数据库系统s w i f i d b ! b j 是东南大学数据库实验室自行开发的移动数据库系统,它的目标之一就是提供一个可扩展的、综合的软件平台,使得企业能够迅速在无线设备上重新部署己有的或者新的应用程序。s w i f t d b f l 皂给用户提供一个可靠的、可扩展的、随时随地可访问商业数据、信息和应用程序的高性能的数据库接口。由于无线网络的特点,任何时候都实时访问企业数据库服务器并不足最佳的解决方案,用户需要离线和移动时都能进行事务的处理,然后通过同步过程实现移动端和中心数据库的一致性。本文主要研究移动数据库系统s w i f t d b 的同步处理模型和事务级同步复制技术,解决上述事务级同步复制技术中的问题并提出相应的策略和方案来减少移动环境给事务同步处理带来的影响,包括研究如何设计同步复制协议和事务处理系统来更好地支持同步处理过程中移动端的移动性、频繁断接、异构性,如何处理同步过程中的事务冲突保证中心数据库的一致性等问题。1 3 研究内容和论文结构本文主要研究内容包括以下几个方面:1 同步复制技术的研究。对移动数据库系统的同步复制技术进行研究,分析和比较不同粒度的同步机制的特点。2 移动事务处理模型的研究。根据事务级同步复制过程中需要解决的问题对移动事务处理模型进行研究,分析它们的事务处理过程、特点和不足。2第一章绪论3 事务处理系统的设计和实现。通过设计和实现系统中的模块对事务级同步复制技术的具体细节进行研究,并提出相应的策略来解决如何支持事务同步过程中移动端的频繁断接和移动性,如何维护中心数据库一致性以及如何减少通信开销和服务器开销等问题。4 事务级同步复制协议的研究。主要对移动事务上载算法、同步服务器下载算法及处理移动端过区切换算法进行研究,支持移动端的移动性以及断接操作。5 同步冲突检测与消解策略的研究。在研究现有冲突消解策略的基础上,采用读集冲突即更新依赖集的同步冲突检测和消解策略,保证中心数据库的一致性。本论文的章节结构如下:第1 章引言部分。主要介绍了本文的研究背景,分析了事务级同步复制技术的研究现状,给出了本文的研究内容和组织结构。第2 章移动数据库i 司步复制技术。介绍了移动数据库系统的结构和特点,概述了同步复制技术的目标、类型和特点,然后按照不同的i 司步粒度对相应的i 一步机制进行了分析。第3 章移动数据库系统中事务级同步处理策略。主要研究移动数据库系统s w i f t d b 的事务同步处理模型,包括研究同步过程中不同的事务类型,i 司步处理的过程和目标,提出相应的策略实现这些目标并解决事务级同步处理过程中的问题,包括如何提高移动端自治性,减少同步服务器开销;如何减少网络通信量:如何解决同步过程中移动端的断接和过区切换问题:如何实现可靠的双向| 一j 步;如何根据不同应用的a c i d 要求维护数据的一致性:如何实现事务冲突检测等等。第4 章移动事务处理系统实现。对事务处理系统中移动端和i j 步服务器中的各个模块进行设计和实现,通过实现系统中的这些模块对事务级同步复制技术的具体细节进行研究。第5 章总结与展望。对本文所作的研究工作的总结,并指明下一步应做的工作。3东南人学硕r i :学位论文第二章移动数据库同步复制技术由于移动计算的特点,移动数据库有许多与传统数据库不同的地方,其中由于移动通讯的低带宽、高通讯费用、通讯不稳定等特点,移动数据库经常处于断连状态。为了获得好的性能和高叮用性,通常需要将移动数据库所需要的数据从中心数据库复制到本地,这样用户在网络断连的情况下对本地数据进行访问和操作,同时中心数据库中的数据有可能被其他用户修改,由于上面婀种原因会造成本地数据与中心数据库中的数据短暂的不一致,移动端重新连接时进行同步处理,将移动丰机上所做的数据修改上传到中心数据库,同时将中心数据库中所做的修改下传到移动端,从而使系统重新收敛于一致性的状态。因此同步复制技术是保持复制的移动数据库系统一致性的一项关键技术。2 1 移动数据库系统2 1 1 移动数据库系统的结构一个典型的移动数据库系统结构如下图:嵌入式数据库移动客户端移动客户端嵌入式数据库图2 1 移动数据库系统体系结构在上图所示的系统结构中,网络分为两个部分,分别为固定网络部分和无线网络部分。固定网络具有较高的数据传输速率和较好的可靠性,又称为可信部分。1 数据库服务器( d b s v r ) :一般为固定结点,每个数据库服务器维护一个本地数据库( 也称中心数据库) ,服务器之间由可靠的高速互联网连接在一起,构成一个传统意义上的分布数据库系统。数据库服务器可以是大型数据库系统,如:o r a c l e 、d b 2 、s q ls e r v e r 。服务器可以处理客户的联机请求,并可以保存所有请求的历史记录。2 移动支持结点( m s s ,m o b i l es u p p o r ts t a t i o n ) :移动支持结点也位于固定高速网络中,并具有无线连网能力,它们用于支持一个无线网络单元,该单元内的移动结点可以通过无线链路支持结点通信,从而与整个固定网络联通,也可以接收由移动支持结点发送的广播信息,服务器与移动支持结点可以是同一台机器。3 同步服务器:与数据库服务器通过可靠的高速局域网连接,负责向移动终端上的嵌入式数据库复制中心数据库中相应用户所需的数据,接收由移动支持结点发来的事务请求,并将处理结果返回移动支持结点,同步服务器也可以安装在m s s 上。4 移动客户机( m c ,m o b i l ec l i e n t ) :m c 向当前所处无线网络单元的m s s 发送事务,并接收事务4第二章移动数据库同步复制技术处理结果,或者从m s s 接收中心数据库中的表数据。移动结点的处理能力与存储能力相对丁服务器来说非常有限,且具有移动性,经常与服务器断接。即使在连接时,由于移动通信的不稳定性,网络环境多变,带宽低、可靠性差且延迟较大。移动结点只存放中心服务器的部分副本,并通过嵌入式数据库管理系统( e d b m s ,也可以称为移动数据库) 对本地数据库进行管理。2 1 2 移动数据库系统的特点与传统的分布式数据库系统相比,移动数据库系统具有如下特点:1 移动性及位置相关性。m c 可以在无线通讯单元内及单元间自由移动,而且在移动的同时仍然可能保持通讯连接;此外,应用程序及数据查询可能是位置相关的。这要求移动数据库系统支持这种移动性,解决过区切换问题,并实现位置相关的处理。2 频繁的断接性。m c 与固定网络之间经常处于主动或被动的断接状态,这要求移动数据库系统中的事务在断接情况下仍能继续运行,或者自动进入休眠状态,而不会因网络断接向撤销。3 网络条件的多样性。在整个移动计算空间中,不同的时间和地点连网条件相差十分悬殊。因此,移动数据库系统应该提供充分的灵活性和适应性,提供多种系统运行方式和资源优化方式,以适应网络条件的变化。4 系统规模庞大。在移动计算环境下,用户规模比常规网络环境庞大得多,采用普通的处理方法将导致移动数据库系统的效率极为低下。5 系统的安全性及可靠性较差。由于移动计算平台可以远程访问系统资源,从而带来新的不安全因素。此外,移动主机遗失、失窃等现象也容易发生,凶此移动数据库系统应该提供比普通数据库系统更强的安全机制。6 资源的有限性。移动设备的电源通常只能维持几个小时,此外,移动设备还受通讯带宽、存储容量、处理能力的限制。移动数据庠系统必须充分考虑这些限制,在查询优化、事务处理、存储管理等诸环节提高资源的利用效率。7 网络通讯的非对称性。上行链路的通讯代价与下行链路有很大的差异。这要求在移动数据库的实现中充分考虑这种差异,采用合适的方式( 如数据广播) 传递数据。2 2 同步复制技术由于移动计算的特点,移动数据库有许多与传统数据库不同的地方,其中由于移动通讯的低带宽、高通讯费用、通讯彳i 稳定等特点,移动数据库经常处于断连状态。为了获得好的性能和高可用性,通常需要将移动数据库所需要的数据从中心数据库复制到本地,这样用户在嘲络断连的情况下对本地数据进行访问和操作,同时中心数据库中的数据有可能被其他用户修改,由于上面两种原因会造成本地数据与中心数据库中的数据短暂的不一致,移动端重新连接时进行同步处理,将移动主机上所做的数据修改上传到巾心数据库,同时将中心数据库中所做的修改下传到移动端,从而使系统重新收敛于一致性的状态。综上所述,利用复制技术可以在多个移动端上实现数据的备份,提高了数据的可用性,减少网络通信,缩短数据存取时间。利用同步过程来消除移动端上的数据与企业中心数据库中的数据暂时的数据不一致,其目的是保持数据库系统中各节点中数据的一致性。结合移动计算的特点,一个理想的移动数据库系统要做到有效地支持移动计算环境中的各种数据应用,满足人们能在任意时刻、任意地点访问任意数据的需求,移动数据库同步复制应当实现如f 4 个目标:1 可用性与可伸缩性:在保证系统稳定性的同时,提供高可用性和高伸缩性,并且移动客户数不受限制,能满足大规模移动用户的同时接入。2 可移动性:允许移动计算机在和网络经常发生断接以及通信质量较差的情况下访问和更新数据库。3 可串行性:数据不一致的一个很重要原囚是多个数据源更新操作并发执行,囚此设法保证并发事务调度的可串行性。4 收敛性:系统总能收敛到一致状态,当某一事务因某种原因被中止长时间不能继续时,应提供相应的策略以保持系统数据的完整性与一致性。5东南大学硕士学位论文2 3 同步复制粒度在复制的移动数据库同步处理方面,人们已经进行了大量的研究,根据同步处理的基本单位,同步复制模型与算法大致分为三类,即数据级| 一步机制,语句级同步机制和事务级唰步机制。2 3 1 数据级同步机制数据级同步机制以元组作为同步处理的基本单位。m c 上的移动数据库在更新某个元组时需要保存其原始值,即上次与数据库服务器i j 步后所得的值。同步时,将各自数据的最新值彼此复制更新。同步过程中没有事务的概念,数据级同步处理是数据的复制,而不考虑语义,凶此m c 甚至不需要维护它所执行的事务,只需保存元组的当前值和下载值。下面通过例子来说明数据级同步机制的执行过程:假设单版本数据库由单独的一个数据项( x - 1 ) 组成,接下来假设某移动端下载x 并与服务器断接,接着运行事务t 1 :x = x + 1 。i - j 时服务器上另一事务t l 更新x ,将x 的值设为2 。服务器和移动端具体的执j 亍过程如下:服务器:r i x = l ,w l x = 2 ,c i移动端:d o w n l o a d e dx = 1 ,r l 【x 】= 1 ,w l 鼎+ l 】_ 2 ,c 1 当重新连接时,服务器发现被移动端上事务t 1 所读的x 的值l 与服务器上x 的值不同,这样就会出现冲突,就需要进行冲突协调。在以数据为粒度的协调方法中,系统使用规则处理数据项冲突。在上面的例子中,可以定义下面的规则来协调x 冲突:x :。2 m ,0 1 d + x :。一疵w n l o d 抽,其中x :。是冲突协调后写到服务器数_ 埘,y 月c ,口口口。口_ n f 据集中的x 的新值,z ,是冲突协调前服务器上x 的值,y 。是当前移动端上x 的值,t,是移动端下t uv n e w刑u w o h i f 口载的x 的值。这样,在服务器上应用此规则冲突协调后,可得到过程:服务器:r l 【x 】- l ,w l x = 2 ,c l ,w 。【x 】= 3 ,c 。其中t 。是服务器上创建的新事务即协调事务,用来反映移动端上的更新。数据级同步实现简单,可以提高伞局的提交率,同步效率较高。但是因为这种方式是以元组为同步单元的,某个元组的同步冲突不会影响其他元组的同步过程,打破了事务的原子性,在保证数据一致性方面有很大难度,可能需要由具体应用来辅助数据一致性的保证。数据级同步不能保证移动分布式事务的原子性和数据库的一致性,因此在一定程度上不能满足更加复杂的商业应用。如图2 2 所示,假设数据项x 的初始值为6 ,被同时下载到移动端n o d e i 和n o d e 2 ,并按网2 2所示分别被修改,当n o d e l 、n o d e 2 与服务器同步时,会发生冲突。如果n o d e l 先将x 的最新值提交给服务器,服务器按前面介绍的规则进行协调,得到x 的值为7 ,然后n o d e :将本地的x 的值提交给服务器,服务器根据规则协调后x 的值为1 9 。可是,按照可串行化理论,服务器先执行t l ,然后执行t 2 ,x 的最终结果应该为2 l ,可见数据级同步处理无法保证数据的一致性。中心数据库n o d e in o d e 2图2 2 数据级同步冲突协调6第二章移动数据库同步复制技术在目前主流的商用移动数据库系统中,为了改进以元组为同步粒度的同步机制难以保证一致性的问题,在同步时是以所有需要进行同步处理的数据为同步单位,即把所有在移动结点的本地数据副本上执行的事务的结果作为一个单独的同步单元,要么所有数据都写入主数据库中,要么回滚所有事务的结果。这样,虽然保证了数据的一致性,但是代价很大,很容易使得由于某个事务的结果集在主数据库中的冲突而导致所有其他事务的结果都被撤销。在s y b a s e f 水j u i t r a l i t e 移动数据库和m o b i l i n k 同步服务器组成的移动数据库系统中,采用的就是这种c l $ i j 。为了提高数据的全局提交率,s y b a s e f l j c j 解决方案中采用了一种服务器脚本的方式,通过用户定制的一些服务器上运行的脚本,可以根据具体的应用语义来协调当发生冲突时,如何解决这些冲突,以使得事务的结果尽町能在主数据库中全局提交。由于和具体应用密切相关,这种方式缺乏通用性,加重了应用开发工作的负担。以一个事务的结果集为同步粒度是一种较为合适的同步机制。在进行同步处理时,每一个事务的结果集作为一个l 司步单元进行同步,这样既保证了事务的原子性,不会破坏数据一致性,而且不会由于同步某个事务的结果集产生的冲突而导致其他所有事务的结果也被撤销。但是,这种同步机制所带来的系统开销也是很大的,极大地加重了系统的负荷。首先,由于是以每个事务的结果集为i 司步单元,所以在移动结点上必须要保存每个事务执行的中间结果,在移动结点上带来存储开销的同时,也需要系统来维护和管理这些中间结果,即需要维护和管理数据对象的多个版本,其次,在进行同步处理时,所有这些中问结果需要通过无线通信信道传输到同步服务器上,加大了通讯量。2 3 2 语句级同步机制这种同步方式以单个数据库操作为同步粒度的,一般单个数据操作用单个s q l 语句表示。例如文献 1 3 】中所描述的s w i f i d b 数据库系统。在这种方法中,数据库操作在本地数据副本上执行,同时保存在事务同志中。在同步过程中,移动端上传的不是本地副本的数据项,而是事务日志中s q l 语句。在同步服务器上进行的冲突检测是以单个s q l 语句为基本单元的。如果通过检测,则s q l 语句提交给数据库服务器执行,使得在移动端所做的修改永久化。由于这种方式通过传递s q l 语句来代替传递直接的结果集元组,在某些情况下能减轻网络传输量,而且避免了在同步服务器上重新根据结果集生成s q l 语句的开销,减轻了同步服务器的负荷。但是以s q l 语句为同步单元打破了事务的原子性,很难保证数据一致性。例如在库存管理应用中,假设一个入库事务由三条s q l 语句构成,本地执行后记入日志,同步时如果前两条s q l 语句通过冲突检测并执行成功而第三条语句冲突检测失败,则放弃执行第三条语句。但是此时前两条语句的执行结果已在中心数据库中水久化,并没有因为第三条语句执行失败而撤销它们的执行效果,因此这三条语句不是作为一个事务来执行,数据库处于不一致状态。其实语句级同步机制可以看成是以单个s q l 语句作为一个事务进行同步,分割了s q l 语句之间的关联,忽略了应用的语义。2 3 3 事务级同步机制事务级同步机制是以事务作为同步处理的基本单位。e d b m s 在本地执行事务时保存必要的日志信息,当同步过程开始时,同步服务器对e d b m s 的同步请求以事务为基本单位逐一处理。若事务未通过检测,该事务夭折,并将失败信息发送给m c 没有冲突的事务则进行全局提交。事务级同步机制保证了事务的原子性,数据库一致性则依赖于同步过程中所采用的冲突检测和消解算法。因此,事务级同步复制是一种理想的同步处理方式,它已成为移动数据库研究领域中的一个重要研究方向。图2 2 中的数据冲突可以通过事务级同步来解决。如果n o d e l 先将t l 提交给服务器,服务器重新执行t i ,此时中心数据库中x 的值为7 。然后n o d e 2 将本地执行的t 2 提交给服务器,服务器检测到t 2 中读取的x 的值与中心数据库中x 的值不同,被n o d e l 执行的事务t l 修改过,贝0 放弃执行t 2 ,并将火败信息发送给n o d e 2 。n o d e 2收到冲突检测失败消息后知道t 2 访问的x 的值在上次同步后已被其他事务修改,因此n o d e 2 重新卜载x 的值,并重新执行t 2 ,然后将t 2 提交给服务器执行,此时服务器检沙j 1 t 2 读取的x 的值与中心数据库是相同的,重新执行t 2 进行全局提交,最后x 的值为2 l 。通过冲突检测使得不同移动端提交的事务t l ,t 2 串行执行,这样保证了数据的致性。移动数据库的事务级同步处理机制具有以下特点:移动结点可以做本地暂态数据更新,保存事务日志;事务止传到同步服务器进行冲突检测后若没有冲突才可以成为永久事务;所有相连结点的复制都收敛于固7东南人学硕 :学位论文定结点即基结点系统的状态。同时移动数据库的事务同步处理机制还应提供灵活的数据下载、可靠的双向同步,以及可以满足应用需求的冲突检测和解决等功能:充分考虑到移动计算环境的特点,以保证同步功能在移动环境下运行的性能。下面通过几种事务级同步复制模型来具体介绍事务l 刊步处理过程。2 3 3 1 两级复制模型j i mg r a y 考虑到移动计算环境的特点,提出了两级复制算法【l 】,现有的移动数据库技术中,绝大部分都受到了两级复制算法的影响。在两级复制算法中系统中的复制被分为两个层次:频繁断连的移动结点和保持网络强连接的基结点。固定网络中的基结点之间的复本更新复制是第一级复制,而移动结点与基结点之间的复本更新复制是第二级复制。第一级复制,类似于分布式数据库中各个服务器间的复本更新复制,可以使用主拷贝更新复制协议。下面主要讨论第二级复制。两级复制机制中,事务也分为两类:1 基事务:基事务只在对象的主结点上执行,并更新对象的丰拷贝,它运行时可以涉及多个基结点。2 暂态事务:暂态事务对本地数据复本操作,得到暂态数据。暂态事务只在移动结点上进行。同定网络1 :断接时执行暂态事务图2 3 两级复制模型同步过程两级复制模型中同步过程如下:1 m c 在断接状态下继续工作,生成若干暂态事务,这砦暂态事务对本地暂态数据操作生成新的暂态数据,操作的结果也都是可以被该移动结点看到的,也就是说,暂态事务生成的暂态结果对m c后面执行的暂态事务都是可见的。2 在移动结点结束断接状态,重新与基结点连接时,移动结点将把本地的执行暂态事务序列传送给基结点。3 基结点依次对暂态事务进行冲突检测,对通过检测的暂态事务执行相应的基事务,也就是说,基结点会以基事务的形式按照暂态事务在移动结点上的提交顺序在数据对象的主拷贝上重做一次。4 如果暂态事务未通过检测,该弓手务夭折,基结点将有关失败信息返回给移动结点。5 基结点提交一个基事务之后,将该更新事务传播给所有其它复制结点,这与主拷贝复制更新协议类似。当更新复制执行成功,则由移动结点上的暂态事务所产生的结果将在所有的数据复本上永久化。6 由于移动结点本身也可以是数据对象的主结点,在移动结点重新与基结点时,移动结点还需要把8第二章移动数据库同步复制技术主结点为自己的所有数据对象的最新值传送给相连的基结点,由基结点将该更新事务继续传播给其他基结点。7 由于在移动结点断接时,数据的主拷贝对该移动结点上的数据副拷贝的更新事务被延迟,因此,在移动结点莺新与基结点连接时,基结点把数据副本的最新值发送给它,从而更新了移动结点上的数据副拷贝。两级复制模型的特点:移动结点可以做暂态数据更新;基结点的状态是可串行化执行的结果:只有暂态事务全局提交成功时,暂态事务的结果才会成为永久的;通过l 一步复制所有移动端都将收敛f 基结点的状态。但是由于每个移动结点中的每个暂态事务都要在基结点中重新执行,当系统规模很大时,基结点将承受很大的压力,从而影响整个系统的性能。在婀级复制模型中,移动结点上暂态事务的执行结果对其他暂态事务来说是可视的,这在某种程度上提高了系统的呵用性,但也增加了级联同滚的町能性。2 3 3 2 虚拟丰副本模型虚拟主副本模型【2 j 是在主副本法的基础上根据移动计算环境的具体特点进行改进得到的。与两级复制模型的前提相同,整个移动数据库中的数据被复制成多个副本,并分别存放在多个移动结点和多个基结点中。存放在移动结点中的主副本被称为移动主副本,每个移动结点都隶属于一个特殊的基结点,这个基结点被称为宿主,宿主管理移动结点,并记录移动结点的基本信息。当移动结点在无线网络中移动时,系统根据通讯代价动态地为移动结点分配基结点,以保证通讯代价最小。最近被选中的摹结点上的副本就成为该移动主副本的虚拟主副本。当系统中其他结点需要与移动结点进行通信时,先查找宿主中的信息,然后通过当前该移动结点连接的基结点与之通信。当移动结点与固定网络断连时,其他结点对移动主副本的读写操作被定位到其虚拟主副本上执行,操作序列也同时记录在该虚拟主副本中。当系统重新连接时,虚拟主副本上的操作序列被传播到移动主副本上执行,同时移动主副本上的最新改动被传播到其他副本,使系统保持一致性状态。在虚拟主副本模型巾,基结点的作用相当于一个代理,移动副本通过基结点与整个移动数据库保持数据的| j 步。虚拟主副本模型的特点:该模型对移动计算中的移动性和频繁断接性都能提供较好的支持,但山于系统没有明确分级,不利于提高系统扩展性。移动设备在网络连通时进行数据库操作需要基结点支持,受到无线通讯的低带宽限制。此外,在这种方法中,移动结点上的副本可以作为主副本,安全性得不到很好的保障。由于这些因素的存在,虚拟主副本模型在商用系统中并没有得到广泛应用。2 3 3 3 三级复制模型三级复制模型i 叫是针对大规模移动数据库系统提出的一种复制模型,其中综合了数据复制技术、数据广播技术和客户机缓存技术等技术的优点。三级复制模型中有服务器级复制、空中复制、客户机缓存这三级复制机制构成。首先,在服务器之间通过传统的分布式数据库的复制技术构成第一级复制,称为服务器级复制。其次,将经常被访问的热点数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 图书出版发行合同
- 2025化工合成材料制造工艺市场需求应用领域行业发展报告
- 2025化学能源行业市场现状供需分析及投资评估规划分析研究报告
- 2025化学工业市场发展局势重要物资需要规划绘制报告
- 2025制造业行业市场深度调研及发展趋势与投资前景预测研究报告
- 2025制造业自动化行业市场供需特点及投资前景规划报告
- 市政公路工程项目管理流程方案
- 2025制造业数字化转型分析及投资发展策略报告
- 2025制造业市场深度分析及发展前景与投资潜力研究报告
- 2025制造业供应链管理行业市场供需分析及投资评估规划分析研究报告
- 2025新疆生产建设兵团草湖项目区公安局面向社会招聘警务辅助人员考试参考题库及答案解析
- 社会科学研究方法 课件 第十二章 撰写研究报告
- 金属冶金基础知识培训内容课件
- 酒店危险源辨识、风险评价和控制措施表
- 铁路法教师讲解
- 医院规培自我介绍
- 2025年贵州省综合评标专家库评标专家考试历年参考题库含答案详解(5套)
- 异分母分数加减说课课件
- 【中考人文地理一轮复习】认知区域的工具:地图 课件
- 二十大教学课件
- 化工企业职业卫生培训课件
评论
0/150
提交评论