




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 随着移动计算技术的飞速发展,移动数据库的研究方兴未艾,移动事务也面 临着弱连接性和移动性等新的挑战:,本论文以移动数据库原型系统m d m 2j , a 基 础,设计了种移动事务处理模型n i d t p m ,研究了它所采用的关键技术。 移动事务处理模型必须解决移动性和弱连接性两个关键问题。论文在认真分 析k t 移动事务处理模型的基础上,提出了一种新的移动事务处理模型m d t p m 。 m d t p m 改进了k t 模型中对事务移动性的处理方式,同时通过事务局部化解决 了弱连接带来的问题,从而满足m d m 2 进行事务处理的功能需求。 k t 模型在处理移动性时没有考虑不同事务管理策略带来的通信行销,移动 机的任何过区切换都将引起事务的分裂。m d t p m 引入了m u 移动率的概念来衡 量事务的移动性,相应地采用了h m s c 、a m s c 和m o v e 等三种事务移动性处 理策略。g ? 对不同m u 移动率,给出了各自通信丌销的计算方法。m d t p m 以此 为基础,列移动事务采刷动态处理策略,从而优化了事务处理的通信刀:销。 针对移动事务的弱连接性,采用了乐观的并发控制方法来处理局部化事务的 一致性维护问题,提出了局部化事务的验证算法,并且在移动事务协调器上没讣 了相应的协议来处理断接引发的一些问题,包括被动断接和主动断接情况,从而 较好地适应事务的弱连接性。 【关键词】移动数据库;移动事务;移动性;弱豫性:断接操作 一。 华中科技大学硕士学位论文 a b s tr a c t t r e m e n d o u sa d v a n c e si nm o b i l ec o m p u t i n gh a v em a d em o b i l ed a t a b a s ef e a s i b l e h o w e v e r ,t h en a t u r eo ft h ew i r e l e s sm e d i u ma n dt h er e s u l t i n gm o b i l i t yo fd a t a b a s e c l i e n t si m p o s em m :yr e s t r i c t i o n so nm o b i l et r a n s a c t i o nm a n a g e m e n tm e c h a n i s m t h i s t h e s i sd e f i n e san e wt r a n s a c t i o nm o d e lf o rm d m 2 a n dt a k e ss o m e d e e p r e s e a r c h , n o w a d a y s at r a n s a c t i o nm o d e lm u s ts u p p o r tm o b i l i t ya n di n t e r m i t t e n tc o n n e c t i v i t y i nt h em o b i l ec o n :p u f i n g t h i st h e s i sa n a l y z e st h ek a n g a r o ot r a n s a c t i o nm o d e lw h i c h c a nc a p t u r em o b i l i t yn a t u r a l l ya n dp r o p o s e san e wt r a n s a c t i o nm o d e lm d t p m t h i s p r o p o s a lc a ns u p p o r ti n t e n n i t t e mc o n n e c t i v i t ya n dc a p t u r em u sm o b i l i t yb e t t e rt h a n k tm o d e l t r a n s a c t i o nl n a n a g e m e n tm o v e sw h e n e v e rah a n d o f fo c c u r si nk tm o d e lw i t h o u t c o n s i d e r i n gm e s s a g eo v e r h e a d t h i s t h e s i si n t r o d u c e st h e c o n c e p to fm m r w h i c h r e p r e s e n t s am u sm o v e m e n tb e h a v i o ra n d a d o p t s t h r e e s t r a t e g i e si n c l u d i n g h m s c ,a m s ca n dm o v e m d t p m t a k e sd y n a m i c m a n a g e m e n ts t r a t e g ya c c o r d i n g t o t h em m ro fm o b i l eu n i tt or e d u c em e s s a g eo v e r h e a d i ti sd i f f i c u l tt om a i n t a i nc o n s i s t e n c eo fa u t o n o m o u sl o c a lm o b i l et r a n s a c t i o ni n w e a k l yc o n n e c t i v i t y t h i st h e s i sa d v a n c e sam u l t i - g r a n u l a r i t yo p t i m i s t i cc o n c u r r e n c y c o m r o la l g o r i t h ma sw e l la sa na p p l i c a t i o n - s p e c i f i cm e c h a n i s mt or e s o l v ec o n f l i c t t o d e a lw i t hd i s c o m _ 】e c t i o n ,m o b i l et r a n s a c t i o nc o o r d i n a t o ri s d e s i g n e dt om a n a g ed a t a d i s s e m i n a t i o na n ds m o o t ht r a n s i t i o nb e t w e e nd i f f e r e n tt r a n s a c t i o ns t a t u sw i t ht h eh e l i 3 o f m d m 2i 丑e k e yw o r d s m o b i l ed a t a b a s e ;m o b i l e t r a n s a c t i o n ;m o b i l i t y ;w e a k l yc o n s i s t e n c e d i s c o n n e c t e d o p e r a t i o n 一。 华中科技大学硕士学位论文 1 绪论 1 1 本课题研究的背景、目的及意义 目前,移动计算机和无线通信技术的迅猛发展为移动计算( m o b i l ec o m p u t i n g ) 提供了一个逐渐成熟的基础平台“3 1 。然而移动计算还需要软件技术的长足发展才能 够真正得到广泛应用。诸多新兴软件技术中,移动数据库( m o b i l ed a t a b a s e s y s t e m ,m d s ) 技术最为引人注目,因为它能够使移动计算机或其他信息设备在移动 过程中,通过无线网络自由地交换数据,从而实现人们在任何时候、任何地点访问 所需数据的愿望“”。移动数据库是一种广义的分布式数据库,到目前为止,移动计 算环境仍然不能够为构建信息系统提供透明的通信解决方案,所以移动数据库必须 考虑数据库客户的移动性、弱连接性、频繁断接以及带宽限制等等特征。1 。图1 1 显示了典型的移动数据库工作环境。 图1 1 典型的移动计算环境 如图1 1 所示,用户使用移动单元( m o b i l eu n i t ,m u ) ,通过无线支持基站( b a s e s t a t i o n ,b s ) 连接到固定网络中进行数据访问。为了实现可靠地查询和更新,并保 华中科技大学硕士学位论文 ! ! ! ! ! ! ! ! = ! ! = ! ! ! ! ! ! = = ! ! ! ! ! ! ! ! ! 竺i i ! ! ! ! ! ! ! ! ! ! ! ! = 证数据的一致性,数据库必须为数据访问提供事务支持。传统事务处理假定客户端 和服务器之间用固定可靠的网络进行互联,进而要求事务必须满足四个基本属性, 即原子性、一致性、隔离性和永久性( 简称a c i d 特性) i t s , 9 。但是在移动数据库中, 事务处理的环境是一个低带宽、频繁断接且客户机位置经常变化的多数据库系统环 境,此时的事务模型应该放宽a c i d 属性上的要求,同时必须支持移动性和弱连接 性1 。 移动事务( m o b i l et r a n s a c t i o n ,m t ) 是指从移动机上发起的数据操作集合“”。 移动事务具有天然的断接性,一个操作集合可能分成几次连接才能完成,而传统事 务模型认为断接属于系统故障,必定引起事务的回滚。其次,由于网络带宽有限, 甚至网络处于断接状态,局部复制的数据难以和主数据版本保持严格一致,使得移 动事务具有弱一致性需求。再其次,发起事务的移动机位置可能在发生变化,这意 味着事务的发起和提交可能分布在不同的站点上,而传统事务( 甚至是分布式事务) , 总是假定客户的位置是固定的。此外,移动事务还具有执行时间长,更易出错等传 统事务模型没有考虑的特征,所以有必要研究新的事务模型来解决上述的问题。 m d m 2 系统是一个移动数据库原型系统。本课题作为该系统一个基本组成部 分,重点研究移动事务处理模型及其关键技术上的解决策略。 1 2 国内外研究概况 移动数据库系统可以看作是传统分布式数据库系统的扩展。o s z u 和v a l d u r i e z 按照自治性、分布性和异构性,对分布式数据库进行了分类。d u n h a m 等人对上述 分类进行了扩展。1 ,提出了移动数据库系统的概念。一个移动计算系统必然包含固 定网络部分和移动单元,其中固定网络部分可能构成传统的分布式系统。因此他们 在分布性坐标轴上增加了一个特殊点表示移动性,如图1 2 所示,进而认为移动数 据库在一般意义上属于异构多数据库系统的范畴,但是也可以简单构建在分布式数 据库之上。目前移动事务的研究和实践一般基于这个定义来开展。另外,研究还认 为移动事务具有复杂的结构模型,比如开放嵌套事务模型“”1 6 1 7 1 、分裂事务模型 “”- ”1 、可变事务模型1 、合作事务模型“”1 等等。 2 华中科技大学硕士学位论文 a ) , s g m 图1 2 移动数据库系统分类 由于移动环境的复杂性,移动事务研究的机制和算法大都存在某种假设条件和 一定局限性。许多事务模型的出发点在于事务执行时如何减小连接代价和网络延迟, 以及如何在断接情况下自治的执行事务操作。其研究的重点在于局部化移动事务和 维持复制数据一致性的方法。现在市场上已有的移动数据库产品对移动事务的处理 大都采用了事务局部化策略,针对移动事务的移动性以及其它特性的研究还很缺乏, 还没有实际的系统真正支持这些特性。 1 2 1 现有移动数据库系统 从实践的角度来看,主流数据库厂商o r a c l e ,s y b a s e 和i n m f o r i x 等各 自推出相应的移动数据库产品。o r a c l e 公司的m o b i l e a g e n t 可以支持移动计算机 访问数据库。“。通过弓l 入m o b i l ea g e n t 将传统的客户,服务器结构扩展到移动计算环 境,形成了客户,代理服务器的三层结构。移动客户机与服务器之间的通讯全部交 给代理完成,代理位于固定网络中,可以与服务器位于同一台主机上。 i n f o r m i x 麾下的c l o u d s c a p c 公司推出了其移动数据库产品c l o u d s c a p e 它在 移动机上驻留一个纯j a v a 可嵌入的小型对象关系型数据库c l o u d s c a p ed b m s ,因而 可以嵌入到i n t c m e t 上各层次的j a v a 应用之中,实现对整个系统,包括从服务器到 便携机,甚至到轻型信息设备等进行数据管理。c l o u d s c a t m 同步构件c l o u d s y n c 不 华中科技大学硕士学位论文 仅实现了数据同步,而且还兼顾了基于应用的语义,这是其比较独特的方面。 s y b a s e 采用数据复制技术来支持移动计算,推出了s y b a s es q la n y w h e r e s t u d i o7 0 2 “,其重要新特性之一就是实现了多种客户端系统( 包括p c 、便携机、 手持和智能设备) 到标准的后台企业数据库系统的数据双向同步。s y b a s e 通过s q l r e m o t e 的数据复制技术,在移动机数据库和中央数据库之间保持同步。s q l r e m o t e 分别运行在中央数据库和移动机数据库上,根据数据库的日志信息,在中央数据库 和远程移动机数据库之间交换消息,保证双方的同步。 以上这些产品对移动事务的支持能力都有限。o r a c l e 的产品侧重于解决移动 机与数据服务器之间因为无线网络的低带宽、高延迟和易中断等特点而带来的网络 连接问题,借助扩展传统的客户朋匣务器结构来提高无线网络的利用率,但是对移动 事务的支持,比如事务弱一致性,移动性等方面没有加以考虑。i n f o r m i x 和s y b a s e 公 司则是通过扩展其复制服务器( r e p l i c a t i o ns e r v e r ) 来支持移动事务。但它侧重解决 事务的断接性,没有真正解决事务的移动性问题。 可见在实践中,移动事务主要是通过事务局部化的方式来实现的,它并没有解 决移动事务的所有问题,但是人们仍然提出了诸多事务模型来试图解决移动事务所 面临的困境。 1 2 2 典型的移动事务模型 1 侧重弱连接性的事务模型 p i t o u r a 和b h a r g a v a 提出了c l u s t e r i n g 模型“。“。它构建在一个分布数据库系统 之上,实现了在移动环境下保持数据库弱一致性的方案。整个移动数据库根据数据 的语义相关性和位置相关性可划分为一组簇,一个簇可能包括几个由固定网络连接 的主机,如果m u 和b s 断接,则认为m u 单独成簇。它有下面的几个特征: ( 1 )移动机为每个数据元素保持强一致和弱一致两个版本。其中强一致版本 必须保持全局一致性,但是允许在断接情况下暂时不一致,在其上只能执行强读 ( s t r i c tr e a d ) 和强写( s t r i c tw r i t e ) 操作;弱一致版本允许在断接时进行操作,但 是必须在簇内保持强一致性,在其上只能执行弱读( w e a kr e a d ) 和弱写( w e a kw r i t e ) 4 华中科技大学硕士学位论文 操作。 ( 2 )移动机上执行两类事务,强一致事务和弱一致二扛务。强一致事务只能执 行强读和强写操作,弱一致事务只能执行弱读和弱写操作。 ( 3 )断接情况下,移动机只能执行弱一致事务,同时为了适应多种多样的带 宽变化,应用可以动态地调整数据一致性的程度。 。 ( 4 )重新连接的时候,弱一致事务进行全局协调,如果存在冲突,撤销之, 否则执行全局提交。 g r a y 提出了两级复制模型”,它和c l u s t e r i n g 模型类似,m u 为每项数据保存 两个版本,相应地定义了暂态事务和主事务等两类事务。和后者的区别在于: ( 1 )移动机只工作在断接条件下,并且执行暂态事务。当与固定网络建立连 接的时候,它参与b s 上执行的主事务。 ( 2 )重新连接的时候,b s 把移动机提交的暂态事务重新执行,如果执厅失 败,撤销之,否则执行全局提交。 上述两种模型都需要在m u 上设计一个事务管理器,用来进行局部化事务的并 发控制、日志管理和恢复管理,因而能够较好地支持断接操作。其缺点在于需要由 移动机保存数据的两个版本,其资源开销过大,而且没有考虑事务的移动性,对长 事务也没有支持。 w a l b o m 和c h r y s a n t h i s 提出了p r o m o t i o n 模型“”,它的设计目标是支持断接操 作。它以分裂嵌套( n e s t e d s p l i t ) 事务为基础结构,其主要特征包括: ( 1 ) 引入了契约的定义。每个契约不仅包含数据,而且包含数据上的操怍以 及操作的权限等信息,服务器端由一个契约管理器来构造契约。 ( 2 ) 整个系统作为一个运行在服务器端的大的长事务而存在,所有资源需求 都由这个事务通过普通的数据库操作而获得。 ( 3 ) 不管移动机是否连接,都由其上的契约代理来负责数据缓存管理部侈动 事务处理,同时契约代理还可以部分的管理移动性。 ( 4 ) 由契约代理和契约管理器同步移动事务,进而获得全局一致性。 ( 5 )契约可以识别应用的语义,不同的契约允许采用不同的一致性策蹯,来 提高自治性和并发性。 华中科技大学硕士学位论文 它的优点在于灵活地支持断接,引入了应用语义来提高自治性和并发性,同时 还支持长事务。但是它是一个基于面向对象数据库系统进行设计的事务模型,传统 的关系数据库系统很难实现之,并且它对移动性的支持也非常有限。 2 侧重移动性的事务模型 d u n h a m 提出了k a n g a r o ot r a n s a c t i o n 模型。它基于一个移动异构多数据库系 统,采用了玎放嵌套事务和分裂事务作为其基本框架,允许移动事务随着m u 移动 而移动,以减少接受事务的b s 和当前所在b s 之间的消息通信代价。一卜k a n g a r o o i r a n s a c t l o n ( ki 、) 包括一组j o e yf r a n s a c t i o n s j t l ,后者管理局部b s 上的一组全局事务 和局部事务。一旦m u 移动到新的b s ,k t 将通过分裂操作在目的b s 上生成一个 新的j t 。因此,k t 可以捕获m u 的移动性。它的主要特征包括: ( i ) 在每一个b s 上存在一个数据访问代理( d a t aa c c e s sa g e m ,d a a ) 它 在逻辑上位于其多数据库系统的全局事务管理器之上。d a a 不汉要协调移动事务的 执行,而且还要跟踪移动机的移动,当发生过区切换时,d a a 把当前事务( j t ) 分 裂为两部分,一部分移交到新的d a a 进行处理。 l 2 ) d a a 、己录事务执行的日志信息,每个j t 执行的日志部保留在本地b s 上,发生跨区操作时,执行检查点操作把日志刷新到持久性存储器上,所以事务执 行j 汰态信息分散在一系列b s 上保存。 ( 3 ) 通过分裂操作,移动事务可能包含若干个子事务,予事务的一致性和可 持久性由多数据库系统来保证。所有操作都在固定网络上执行移动机不能自治执 行事务操作。 k t 模型的优点在于能够较好的捕获事务的移动性,但是其缺点也比较明显。 ( 1 )m u 的任何过区切换都会引起事务的分裂,它没有考虑m u 的移动性和 事务管理开销之问的关系“,另外某些移动应用可能不需要事务进行分裂,k t 模 型不能兼顾这种情况。 ( 2 ) 它不能在移动机上执行自治操作,对事务弱连接性支持不够。 此外,还有i o t 模型”、s e m a n t i c b a s e d 事务模型3 “、m d s t p m 模型。2 1 和 r e p o s i n ga n dc o t r a n s a c t i o n s 等移动事务处理模型。 华中科技大学硕士学位论文 1 3 本课题的研究内容 本文将在移动数据库原型系统m d m 2 的基础上,进行移动事务若干关键技术 的研究。主要研究内容包括: 1 移动事务处理模型研究 以m d m 2 系统为基础,讨论移动事务的定义以及移动事务模型的设计目标和 功能需求。然后提出一种移动事务处理模型m d t p m 。m d t p m 通过事务迁移来捕 获移动性,同时通过事务局部化解决移动事务的弱连接性问题。还将给出其事务处 理协议以及对事务移动性和断接性的处理策略。 2 事务移动性研究 引入m u 移动率的概念来衡量事务的移动性,并具体分析如何计算移动性给事 务处理带来的开销,然后给出三种事务处理策略各自通信开销的计算方法。还将讨 论m d t p m 事务模型移动性处理的策略。 3 移动事务局部化研究 从一致性模型和断接操作处理两方面来研究m d t p m 模型对弱连接性的支持。 首先研究移动事务的一致性处理,重点讨论局部化事务一致性处理面临的问题,提 出其一致性模型的设计方案和事务验证算法。其次将讨论m d t p m 事务模型支持断 接操作的方法。重点研究主动断接的处理策略,给出相应的设计和算法。 华中科技大学硕士学位论文 2 移动事务处理模型总体设计 2 1 引言 由于无线网络还不能为信息系统提供完美的解决方案,所以移动数据库系统不 仅要考虑数据的分布、复制和一致性的维护,而且还必须考虑数据库客户的移动性、 弱连接性以及频繁断接性。相应的,移动事务模型必须考虑如何解决移动性和弱连 接性两个关键问题。 本章首先介绍m d m 2 移动数据库原型系统,然后讨论移动事务处理的设计目 标和功能需求。在此基础上给出移动事务模型m d t p m 的总体设计方案,讨论其移 动事务处理协议,着重分析模型在移动性上和弱连接性上的处理策略。 2 2m d m 2 移动数据库系统 按照d u n h a m 的划分方法,m d m 2 系统实际上是一个移动多数据库系统。它采 用m u a g e n t s e r v e r 的三层模型,其结构如图2 1 所示。 图21 移动d b m s 体系结构 其中:l d b m s 。表示第i 个场地的数据库管理系统,它们可能同属于一个分布 式数据库,比如d m 2 ,也可以是一个多数据库系统的各个自治局部数据库。m a ( m o b i l ea g e n t ) 为相应的移动代理。m a 上驻留着一个事务协调器( m o b i l e t r a n s a c t i o nc o o r d i n a t o r , m t c ) ,同m u 上的局部事务管理器协作调度移动事务,处 理事务的移动性和弱一致性。另外m a 还包括有其他组件,包括缓存代理,位置代 华中科技大学硕士学位论文 理等等。 m u 上驻留有一个全功能的关系型数据库引擎m d m 2l i t e ,如图2 2 所示,用 以在断接情况下模拟服务器的功能。除了具有传统事务处理功能之外,m d m 2l i t e 主要增加了断接管理模块,包括状态管理、收集管理、断接管理和重集成管理四个 部分,它们相互配合来完成断接操作。其中状态管理部分统一协调其他三个膜块。 ( 1 ) 收集管理模块:处理系统的收集请求。一种是由查询编译器生成的隐式 查询请求,即自动收集求助查询所需要的数据:一种是处理用户显式提出的i 叟集操 作请求。数据收集用来建立移动客户机本地数据库操作。实际上它仍然是通过s q l 查询语句形式来完成的。不同的是收集不仅获得数据,还要获得模式信息。因此查 询要分解为:一般查询和字典查询两个部分,前者获取结果后者获取模式信息。 图2 2m d m 2l i t e 结构图 ( 2 ) 断接管理模块:负责管理系统与底层数据库的通断状态。并负责处理用 户显式的断接操作。在执行断接前,如果有未完事务,它要将有关信息提交冶用户 决定,用户再次确定要断开时,执行强制断接操作;若无未完事务则直接技厅断接 操作。在主动断接时,它向m t c 提出断接请求,得到回应后断开连接,并通知状态 9 华中科技大学硕士学位论文 管理机构系统所处状态。 ( 3 )重集成管理模块:完成本地数据库和主数据库一致性的维护。它由状态 管理机构触发。发生的时机:一是用户显式提出重集成操作要求:二是断接后重新 连接完成后:三是达到一定时间间隔。重集成操作内容包括:提交本地数据库修改 的事务日志和验证信息,并且和m t c 配合实现冲突的解决。m u 通过移动代理间接 连接到数据库服务器上,移动代理驻留在固定网络上,与主数据库服务器直接联系。 移动代理的存在使得不改动数据库的内部结构就能够让传统的数据库服务器支持移 动应用。 2 3 移动事务处理的需求 2 3 1 移动事务的特征和定义 文献 1 1 】认为从移动机上发出的事务成为移动事务。如图1 2 所示,不管移动数 据库系统如何分类,从总体上来看它总可以分为移动单元( m o b i l eu n i t ,m u ) 和固 定单元( b a s i cu n i t ,b u ) 。移动单元位于备种各样的移动设备上,固定单元在固定网 络中,可以是个分布式数据库或者多数据库系统,m u 通过无线通信链路和b u 实现通信。移动事务可以完全在m u 上执行,或完全在b u 上执行,也可以由m u 和b u 协作执行。从广义上说,移动事务m t 。是一个分布式事务,它和传统分布式 事务的区别主要在于:首先,移动机位置在不断变化,移动事务的发起和提交分布 在不同的站点上,所以移动事务处理可能需要随着m u 的移动而发生迁移。其次, 移动事务具有开放嵌套的事务结构“,可以分解为一系列子事务,每个子事务包含 的操作序列是m t 包含的所有操作序列的一个子集。m t 各子事务满足一个偏序关 系,在此将l 的各个子事务称作执行片段。下面首先扩展移动事务的操作集合,然 后给出移动事务的定义。 为了保证断接情况下事务的执行不被阻塞,移动事务模型必须能够把移动事务 迁移到m u 上自治执行,即把移动事务局部化。这时候m t 执行过程分为三个阶段: 本地执行阶段、验证阶段和全局提交阶段。本地执行阶段和后两个阶段往往是分离 的,所以引入本地提交操作,称之为预提交操作,记为p c ,它标识着事务本地执行 1 0 华中科技大学硕士学位论文 阶段的完毕,允许同一移动单元内的后续事务读取它的更新结果。 定义2 1 :一个执行片段e i j 是一个偏序e 。= ( 点,- ) ,满足 ( 1 ) 盛= k ( x ) ,w 。( x ) | x 为数据对象 u a 。,c ,p c ; ( 2 ) 口万,当且仅当c 仨i ; ( 3 ) 如果,瓯且r 扣,吒,p c ,贝0 v p 瓯勘正 “,c : ,p ,: ( 4 ) 如果( x ) ,w ( x ) j ,则必有 ) _ w ( x ) ,或昔w ( x ) _ :( x ) : 定义2 2 :一个移动事务m t 是一个三元组 ,其中f = e h e 。 是执行片段的集合,l = 1 1 ,1 2 ,1 。 是一个位置集合。而f l m = t l m l ,t l m 。) 是 片段到位置的映射集,满足v j ,f l m j ( e j ) = i l 。 2 3 2 移动事务处理的功能需求 由于移动应用的复杂性,不同的设计目标对于事务模型设计会有很大的影响。 在设计m d m 2 的时候,假定系统适应目标环境为图i 1 所示的移动计算环境。移动 机在访问数据的时候可能由于位置的变化而发生过区切换。目前,虽然移动i p 技术 的发展使得网络层的过区切换对应用层逐渐透明,但是我们在事务级别上仍然处理 过区切换。其原因有两点。其一,出于连接代价的考虑,移动应用总是寻求最近的 数据资源进行访问。比如要查询一个全国范围内的信息数据库,移动用户在下同的 城市将访问当前所在地的局部数据库来获取信息。其二,为了处理位置相关事务, 应用需要知道自己的位置,这也是在移动代理上设置移动机位置管理部件的泵因。 在此基础上,移动事务处理的需求主要包括以下几个方面: ( 1 )为传统数据库的应用扩展到移动计算环境提供事务支持,即支持i 济作 性应用程序,比如在线事务处理,公共信息查询,以及电子商务平台在移动设备上 的扩展等等。并且假定在这种环境中,读写冲突的概率不大。 ( 2 ) 能够支持事务的移动性,一方面使得用户在移动过程中仍然能够j 疗问分 布在不同地域的数据库站点,另一方面可以支持位置相关的事务,比如移动查询等 等。 ( 3 ) 能够支持断接操作,提供在m u 上自治执行事务的能力,并且艟萝根据 连接状况来实现局部化事务的一致性。 华中科技大学硕士学位论文 ( 4 )能够尽量优化网络通信代价,并且具有较高的可伸缩性。 ( 5 )由于移动数据库一般在现有的分布式数据库系统或者多数据库系统上 陶造,所以移动事务管理尽量利用现有的全局事务管理功能( 包括分布式事务管理 器和多数据库事务管理器) 。 其中( 1 ) 说明应用可能需要事务处理模型在移动环境下仍然保证事务具有传 统的a c i d 属性,而应用本身并不复杂。( 2 ) ,( 3 ) 说明事务模型必须支持移动性和 断接性处理。( 4 ) 说明事务模型还要考虑通信代价以及可扩展性等等一些非功能性 需求。( 5 ) 要求移动事务管理需要合适的划分层次,明确和已有全局事务管理器的 关系。 2 4 移动事务模型m d t p m 2 4 1 总体结构 基于以上考虑,我们提出移动事务处理模型m d t p m ( m o b i l ed a t a b a s e t r a n s a c t i o n p r o c e s s i n gm o d e l ,m d t p m ) 。在本模型中,移动事务管理层位于现有的 全局事务管理器( g t m ,比如d m 2 提供的分布事务管理器) 之上,如图2 3 所示, 每个b s 上有一个移动事务协调器m t c 用来处理本小区内i v u 或者漫游到本小区 的m u 的事务请求。移动事务( m o b i l et r a n s a c t i o n ,m t ) 总是从移动客户机上发出, 包括一系列执行片段。执行片段由一组m t c 来调度管理,每个m t c 调度的事务片 段集合称为一个m t c t ( m t ct r a n s a c t i o n ) 事务,m t c t 包含的所有事务发送到同 一个g t m 进行处理,所以一个m t c t 事务相当于底层多数据库( 或分布式数据库) 的一个全局事务。在两种情况下可能发生事务迁移:其一,当发生跨区操作的时候 m t 可能在相邻m t c 之间进行事务切换;其二,用户主动断接后可以把移动事务迁 移到m u 上执行,这时m d m 2l i t e 负责协调局部化事务的执行。 图2 3 表示了2 个工作区( c e l l ) 的执行情况,其中虚线标明了可能发生的 事务迁移流向。m t 指从移动客户机发出的移动事务,m t c 。( i = 1 ,2 ) 为各小区b s 上的事务协调器,负责调度m t 在本小区的所有事务执行片段。l t m 为m u 上的局 部事务管理器,负责协调局部化到移动机的事务。当事务从m t c j 迁移到m t c 2 的 1 2 华中科技大学硕士学位论文 时候,它们之间满足的关系为: m t = m t c t i ,m t c t 2 ; m t c t j = e j ,e 2 ,e 3 ; m t c t 2 = e 4 ,e 6 ; 以上关系很容易推广到跨越n 个小区的情况。 图23m d m t p 事务处理模型 2 4 2 事务模型的特性分析 1 移动性分析 移动 。社务 处理 + # 务控制流 一一一# 务迁移流 - 耳务验证流 一一:自息通信流 m d t p m 模型处理移动性的策略和k t 模型类似。由于m u 执行事务期间可能 发生移动,一个事务m t 可以包括若干个m t c t 事务。发生过区切换时,根据特定 条件判断是否需要进行事务迁移,如果需要则当前协调事务的m t c 执行一卜事务 分裂操作,同时目的b s 上的m t c 生成新的m t c t 事务来接管m t 的执厅。但是 在k t 模型中,m u 的任何移动都将引起事务的分裂,它没有考虑不同事萼葺理策 略带来的通信开销。另外,我们注意到某些移动应用不需要事务处理捕获m u 的移 动性。m d t p m 针对k t 模型的缺点进行了改进。 为了衡量移动性给事务处理策略带来的通信开销,首先引入了m u 移动宰( m u 华中科技大学硕士学位论文 m o b i l i t yr a t i o ,m m r ) 的概念来度量m u 移动性的大小,m m r 根据m u 上发起的 所有事务的平均过区切换次数n h 来决定,每一个b s 上的m t c 都保留着在向该基 站注册成功的m u 的i d 列表,并保存它们对应的m m r 。根据移动事务管理所处的 位置不同,人们把移动性处理策略分为三种,即h m s c 、a m s c 和m o v e i i 。h m s c 策略指所有子事务都由m u 归属的m t c 来协调执行:a m s c 策略是指所有子事务 部由发起事务时m u 所在的m t c 负责处理;m o v e 策略是指移动事务的管理将随 着m u 的移动而转由相应b s 上的m t c 负责。基于事务通信开销的考虑,m d t p m 根据m m r 动态决定事务是否在m t c 之间进行迁移。如果发起事务的m u 的m m r 大于某一个域值,将采用m o v e 策略,否则,采用h m s c 策略或者a m s c 策略, 其中,移动事务通过分裂操作实现迁移。 另外考虑某些移动应用要求事务管理不随着m u 移动而迁移的情况。比如固定 在某一个b u 内的企业信息数据库,出于安全考虑,只能通过该b s 上的m t c 进行 访问,因此即使m u 的m m r 超过了域值,仍然需要采用h m s c 策略。所以m d t p m 还允许移动应用静态配置事务迁移的方式。 2 断接性分析 为了处理事务断接性,m d t p m 还支持移动事务的局部化处理。出于连接代价 或电源限制的考虑,m u 可以通过主动断接操作把移动事务迁移到本地执行,这里 的事务迁移和事务在m t c 间的切换是不同的。后者发生时,m u 和固定网络并不 一定断开,它仍然可以通过m t c 来访问底层数据库,因而不需要进行数据的迁移: 而前者发生的时后,m u 即将要执行断接操作,所以伴随着事务迁移到m u 上,还 必须把事务需要的数据迁移到m u 上。在m d m 2 中,数据的迁移和同步维护由缓 存管理器( c a c h em a n a g e r ,c m ) 来实现,这里不在赘述。我们考虑的重点在于如 何执行和提交局部化的事务,并维持其一致性。 为了在m u 上自治的执行事务,m d m 2l i t e 中实现了一个局部事务管理器 ( l o c a lt r a n s a c t i o nm a n a g e r ,l t m ) ,用来处理断接条件下局部化事务执行片段的 并发控制、日志管理和事务恢复等等。由于存在本地复制数据,执行局部化事务的 时候必须考虑合理的并发控制机制。m d m 2 采用乐观并发控制,局部化事务预提交 1 4 华中科技大学硕士学位论文 后必须交给m t c 进行全局验证,验证通过之后才能把写操作最终提交到底层数据 库。虽然我们在需求中假定模型适用环境存在的读写冲突率不高,但是由于局部化 事务执行时间较长,乐观并发控制仍然会存在一定的的冲突。模型提供了有效的验 证方法和冲突解决策略,以减少事务的回滚率。 综合2 5 1 和2 5 2 所述,可以看出m d t p m 实际上可以在两种模式下工绺,其 一是在线模式,这时候m t c 可以捕获m u 的移动性,相应的调度执行一系列事务 执行片段:另外为断接模式,用来支持事务的弱连接性。 2 5 移动事务处理协议 在m d t p m 中,移动事务处理协议分为m t c 事务处理协议和m u 事务处理协 议两个部分。前者由m t c 执行,后者由m u 上的l t m 执行。前者需要处理移动事 务的迁移,所以相对于后者要复杂。 2 5 1m t c 事务处理协议 1 数据结构 ( 1 ) m u 状态表。主要记录在本b s 内注册成功的m u 的i d 和其移动率 ( m m r ) ,以决定从m u 发起的事务采用什么样的策略,同时还需要记录n i l _ + 主动 断接的时戳,以便将来同步局部化事务时进行一致性验证。当移动机发生过匿切换 时,u 状态表随之迁移到新的m t c 上。 c l a s sm u s t a t u s m u i dm u l d ;m u 的唯注册标志 i n t m m r ;m u 的移动率 t i m ed i s c t i m e s t a m p ;m l i 的断接时戳 b o o l e a n i s f i x e d ;事务是否固定由某个m t c 协调 m t c i d m t c l d ;如果事务管理固定,记录m t c 的唯一i d l o t n h ;最近一次事务执行过程中的过区切换次数 ) ; 华中科技大学硕士学位论文 为了方便查询和更新,m t c 采用双向列表存储本地的所有m u 状态表。如果 m t c 管理的m u 数目非常多,为了保证查询效率,可以改进为哈希表结构。 ( 2 )事务状态表。记录移动事务的执行片段以及和其执行位置的映射关系。 c l a s sm t f移动事务 m u l d m u i d ;u 的唯一注册标志 i n tm t l d ;移动事务的唯一i d i n tr a t t y p e ;事务的执行策略:h m s c 、a m s c 或m o v e i n tm t c t n u m b e r ; 参予的m t c 数目 i n ts t a t u s ; ,事务执行状态:执行、提交或回滚三种 m t cm t c t l i s t ;第一个m t c t 指针 ; c h a s sm t c t m t c 协调的事务,m t c t i n t m t c t i d ;m t c t 的唯一i d m t c p r e v m t c t ;之前的m t c t 指针 m t c n e x t m t c t ;之后的m t c t 指针 i n t s t a t u s ;m t c t 的状态:执行、提交或回滚二种 i n t e t n u m b e r ;m t c t 协调的事务执行片段数目 e f r a g m e n te t l i s t ;m t c t 协调的事务执行片段指针头 ; c l a s se f r a g m e n t 事务执行片段 i n te i d ;事务执行片段i d i n ts t a t u s ;事务执行片段状态:执行、提交或回滚三种 : ( 3 ) 移动事务日志记录。每个b s 上的m t c 维持一个局部日志,但是日志中 并不记录数据更新的写前映像,一方面是因为底层数据库的恢复管理部件已经在内 部已经保存了事务的写前映像,m t c 重复记录影响效率;另一方面是因为g t m 完 全自治的执行事务片段,m t c 很难获取事务执行的更新日志。所以实际上,局部日 志中记录的是移动事务执行的状态信息,其主要的记录类型如下: 华中科技大学硕士学位论文 b t m t ( b e g i nt r a n s m t ) 移动事务开始 e t m t ( e n d t r a n s m t ) b t m t c t ( b e g i nt r a n s m t c t ) e t m t c t ( e n dt r a n s m t c t ) b t e f ( b e g i nt r a n s e f r a g m e n t ) e t e f ( e n d t r a n s e f r a g m e n t ) h o m t ( h a n d o f f m t ) c t m t ( c o n t i n u i n gm t ) d c m t ( d i s c o n n e c tm t ) v a m t ( v 副j d a t em t ) 移动事务结束 m t c t 事务开始 m t c t 事务结束 事务执行片段开始 事务执行片段结束 移动事务发生过区切换 继续执行移动事务 移动事务断接,并迁移到m u 上执行 局部化的m t 进行全局验证 2 处理协议 ( 1 ) m u 向当前归属b s 发起一个移动事务,其上的m t c 首先查询m u 状 态表来决定采用何种移动性处理策略:如果m m r 小于域值m m r t l l 。h 。则当前m t c 始终作为移动事务的管理器,否则当前m t c 只作为初始事务管理器。然后m t c 为 移动
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教育系统后备干部笔试试题与参考答案
- 浙江宁波市海曙区教育局招聘2025学年“专曙优师”教育人才65人(第一批)笔试高频难、易错点备考题库及答案详解一套
- 2025导游资格考试考试综合练习附参考答案详解【培优B卷】
- 2024年安全员考试常考点试卷【满分必刷】附答案详解
- 2025年高校教师资格证之《高等教育法规》题库试题及参考答案详解ab卷
- 2025临床执业医师过关检测试卷及一套完整答案详解
- 2024自考专业(工商企业管理)全真模拟模拟题含答案详解【综合卷】
- 当涂安全员证考及答案1
- 云南安全员考试及答案题库
- 2025年酒厂文化考试题及答案
- 端子拉力测试标准
- 公司标准化室管理制度
- 2025年安徽省网络和数据安全职业技能大赛(数据安全管理员)备赛试题库(含答案)
- 教育部幼儿园入学准备教育指导要点
- 中华诗词大赛小学4-6真题题库及答案
- 2024中级审计师考试要点试题及答案
- 融资租赁信用评估体系构建-全面剖析
- 职业健康检查质量管理工作手册
- 2025年网络安全检查整改报告
- 《透视画法基础:艺术绘画基础课程教案》
- 社会治安综合治理中心规范化建设推进会
评论
0/150
提交评论