(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf_第1页
(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf_第2页
(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf_第3页
(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf_第4页
(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

(计算机应用技术专业论文)移动计算环境下的异构数据源同步方案的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 移动计算环境的日益普及,使人们可以随意地进行异地数据访问和操作,为不同地 点用户之间的协同工作提供了基础性前提。在这种情况下,需要借助数据同步技术来保 持网络上不同数据源的版本一致性。由于历史、移动设备生产厂商以及不同的具体应用 场景等原因,参与同步的数据源可能是异构的。移动计算环境中可以涉及到多种同步数 据源,例如通信簿、日程表等。同时由于移动网络的不稳定性和灵活性,这些数据源经 常变化或者改变格式。这样,需要结合移动计算的特点研究、解决异构数据源之间的同 步问题,以更好的支持任意数据源和任意设备之间的协作,这也是本文的主要目的。 通过对同步技术的研究综述发现,同步协议相对于传统的数据库同步技术来说,更 加适合用来构建普遍的、可扩展的同步解决方案。尤其是s y n c m l 同步协议,因为其专 注于移动计算的设计特点已经被普遍使用作为行业规范,本文以该协议为基础讨论异构 数据源之间的同步问题。 目前的同步解决方案主要集中于同构数据源之间的同步,没有关注异构数据源之间 的同步问题;现在普遍的异构数据源协作方法依赖于“全局模式”的设计,但是移动计 算环境涉及到的应用数据源多种多样、千变万化,并且不断发展着,这种情况下设计完 全通用的全局模式在目前来说是不可能的。由于目前全局模式设计的不完备性,造成使 用这种方法的异构数据源协作系统缺乏灵活性和可扩展性。 本文提出的异构数据源同步方法,针对当前移动计算环境的特点,给出了一种简洁、 易用,并且可以保持相当时期稳定性的可扩展方案,为移动环境下的异构数据源同步提 供了一种更加现实、更加灵活的行业解决方案。本文主要的研究内容如下: 首先对将要研究的问题中所涉及到的基础概念进行界定,比如异构数据源的定义 等。然后通过分析目前相关的技术及其主要问题,提出了自己的异构数据源同步方案。 这个方案包含两个关键环节:利用同步协议传输数据源模式的过程和异构模式映射过 程。接下来,重点讨论了利用同步协议传输数据源模式的过程。在这里,深入分析了使 用s y n c m l 协议传输数据源模式信息所引发的问题,并提出有效的解决方案从而达到了 目的。继而,重点讨论了异构模式映射过程中出现的问题和解决方法。在这里,分析了 主要的数据源异构类型,针对这些主要分类制定了映射规则,设计了以规则驱动模式映 射关系建立的模型,以及灵活的规则增加、删除和生命周期管理机制。最后,介绍了异 构数据源同步方法的系统实现。并且以联想台式机销售业务部门为应用背景,阐述了异 构数据源同步系统的应用流程和使用效果。 本文的创新之处如下: 提出一种简洁、易用,并且可以保持相当时期稳定性的可扩展方案。针对当前移动 计算环境数据源种类繁多、数据多变的特点,为移动环境下的异构数据源同步提供的一 种更加现实、更加灵活的行业解决方案。 提出了一种机制,由中间过渡数据类型和类型之间的转化规则组成,解决了在不改 变s y n c m l i 司步协议规定的同步步骤和消息格式的前提下,传输数据源模式信息的问题。 提出由规则驱动模式映射关系建立的模型,分析了主要的异构分类并针对主要分类 定义了基本的异构映射规则集合这种规则驱动模型并加上基本异构映射规则集合,完 成了映射关系的自动化生成功能,加强了整个异构数据源同步方法的扩展性。 设计并实现了异构数据源同步系统。通过设计了层次化的数据模型、兼容的数据源 访问模型和方便的安全访问模型使该系统具有容易扩展和维护的特性。同时考虑到冲突 解决逻辑和异构映射逻辑的灵活多变性,专门设计并实现了松散的逻辑结构,使整个系 统可以更大限度地满足不同的需求。 关键词:数据同步、异构数据源,s y n c m l 协议、冲突解决、模式映射 i i d e s i g na n dr e a l i z a t i o no fs y n c m l b a s e ds y n c h r o n i z a t i o nm e t h o df o r h e t e r o g e n e o u sd a t as o u r c e si nm o b i l ec o m p u t i n g e n v i r o n m e n t l ix i n h u i ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yh ez h i q i a n g p o p u l a r i t yo fm o b i l ec o m p u t i n gm a k e sp e o p l ea c c e s sa n do p e r a t ed a t ao nad i f f e r e n t p l a c eo p t i o n a l l ya n dp r o v i d e st h eb a s i cp r e c o n d i t i o nf o rt h ec o o p e r a t i o nb e t w e e nu s e r so n d i f f e r e n tp l a c e s i nt h i sc a s e ,d a t as y n c h r o n i z a t i o nt e c h n o l o g yi sn e c e s s a r yt ok e e pt h e c o n s i s t e n c yo fd i f f e r e n td a t av e r s i o n so nt h en e t w o r k t h o s ed a t as o n r c e sa r eh e t e r o g e n e o u s a c c o r d i n gt od i f f e r e n tb a c k g r o u n dh i s t o r y , p r o d u c e r , o rd e t a i la p p l i c a t i o ns c e n e m o b i l e c o m p u t i n ge n v i r o n m e n tc a ni n v o l v em a n yk i n d so fd a t as o u r c e s a n dt 1 1 0 s e d a t as o u r c e s c o n t i n u et oc h a n g eb e c a u s eo ft h eu n s t e a d ya n df l e x i b l ec h a r a c t e ro ft h em o b i l en e t w o r k s o , t h es y n c h r o n i z a t i o np r o b l e mo fh e t e r o g e n e o u ss o u r c e ss h o u l db es t u d i e da n dr e s o l v e dt o s u p p o r tt h ec o o p e r a t i o nb e t w e e nr a n d o md a t as o u r c e sa n dd e v i c e s t h a t sa l s ot h ep u r p o s eo f t h i sp a p e r t h r o u g hs t u d yo f p r e s e n ts y n c h r o n i z e dt e c h n o l o g y , s y n c h r o n i z a t i o np r o t o c o li sf i t t e rf o r p e r v a s i v ea n de x t e n s i b l es y n c h r o n i z a t i o ns o l u t i o n st h a nt r a d i t i o n a ld a t a b u s es y n c h r o n i z e d t e c h n o l o g y m o r ee s p e c i a l l y , s y n c m lp r o t o c o li st r e a t e da si n d u s t r ys p e c i f i c a t i o na n d d e s i g n e df o rm o b i l ec o m p u t i n ge n v i r o n m e n ts p e c i a l l y s o ,t h i sp a p e rb a s e so nt h i sp r o t o c o lt o r e s o l v et h es y n c h r o n i z a t i o np r o b l e mb e t w e e nh e t e r o g e n e o u ss o u r c e s a tp r e s e n t ,c o m m o ns y n c h r o n i z a t i o ns o l u t i o nf o c u s e so nt h es y n c h r o n i z a t i o nb e t w e e n i s o m o r p h i cd a t as o u r c e sa n dp a y sn oa t t e n t i o nt os y n c h r o n i z a t i o nb e t w e e nh e t e r o g e n e o u s s o u r c e s a n dt h ep r e s e n tm e t h o df o rc o o p e r a t i o no fh e t e r o g e n e o u sd a t as o u r c e sd e p e n d so n t h ed e s i g n o f “g l o b a lp a t t e r n b e c a u s et h ed a t as o u r c e sa n dd a t ai n v o l v e di m ot h e e n v i r o n m e n to fm o b i l ec o m p u t i n ga r ev a r i o u sa n dc o n t i n u et oc h a n g e ,ac o m p l e t eu n i v e r s a l “g l o b a lp a t t e m i si m p o s s i b l et od e s i g n t h a ti sw h yp r e s e n tm e t h o df o rc o o p e r a t i o no f h e t e r o g e n e o u sd a t as o u r c e s i sh a r dt oc h a n g ea n de x p a n d s o ,t h i sp a p e rp u t sf o r w a r dan e ws y n c h r o n i z a t i o ns o l u t i o nb e t w e e nh e t e r o g e n e o u sd a t a s o u r c e sb a s e do ns y n c m lp r o t o c o l ,w h i c hi se x t e n s i b l ea n de a s yt od e s i g na n du s e ,m o r e r e a l i s t i ca n df l e x i b l es o l u t i o nf o rm o b i l ec o m p u t i n ge n v i r o n m e n t t h i ss o l u t i o nc a nk e e pa l o n gp e r i o do f s t a b i l i t y t h em a i nc o n t e n t so f t h i sp a p e r a r ea sf o l l o w s : a tf i r s t a l lt h eb a s i cc o n c e p t sa r ed e f i n e dr e l a t e dw i t ht h ep r o b l e mt a l k e di i lt l l i sp a p e r , s u c ha st h ec o n c e p to fh e t e r o g e n e o u ss o u r c e s t h e n , n e ws y n c h r o n i z a t i o nm e t h o db e t w e e n h e t e r o g e n e o u ss o u r c e si sp u tf o r w a r db ya n a l y s i so f r e l a t e dp r e s e n tt e c h n o l o g ya n dp r o b l e m s , i n c l u d i n gt w o c r u c i a ls t e p s :t h ep a t t e r nt r a n s f e r sp r o c e s st h r o u g hs y n c h r o n i z a t i o np r o t o c o la n d p a t t e r n sm a p p i n gp r o c e s sb e t w e e nh e t e r o g e n e o u ss o u r c e s c o m i n ga f t e rt h a t ,t h ep a t t e r n t r a n s f e r sp r o c e s st h r o u g hs y n c h r o n i z a t i o np r o t o c o li st a l k e d t h er e l a t e dp r o b l e m si nt h i s p r o c e s sa r ea n a l y z e dt h o r o u g h l ya n de f f e c t i v es o l u t i o n sa r ep u tf o r w a r dt o r e s o l v et h o s e p r o b l e m s a f t e r w a r d s ,t h ep r o b l e m sa n dp r o b l e m s - r e l a t e ds o l u t i o n so fp a t t e r n sm a p p i n g p r o c e s sb e t w e e nh e t e r o g e n e o u ss o u r c e sa r et a l k e d p r i m a r yc l a s s i f i c a t i o n so fh e t e r o g e n e o u s s o u r c e sa r ea n a l y z e d a c c o r d i n gt ot h ec l a s s i f i c a t i o n s ,b a s i cr u l es e ti sd e s i g n e da sag u i d ef o r i l l m a p p i n gp r o c e s s am o d e l d r o v e db yt h er u l es e ti s d e s i g n e dt op r o d u c em a p p i n g r e l a t i o n s h i p sa n das u i to fm e c h a n i s mi sc r e a t e dt oe x e c u t ea d d ,r e m o v e ,a n do t h e rl i f e c y c l e m a n a g e m e n to p e r a t i o n so nr u l e sc o n v e n i e n t l y l a s t l y , t h ed e s i g na n dr e a l i z a t i o no fr e l a t e d s y n c h r o n i z a t i o ns y s t e ma r ei n t r o d u c e d d e p e n d i n go nt h es a l e sd i s t r i b u t i o no fl e n o v oa sa n a p p l i c a t i o nb a c k g r o u n d t h ew o r k f l o wa n de f f e c to f u s i n gt h es y s t e ma r ei n t r o d u c e d t h em a i ni n n o v a t i o n so f t h i sp a p e ra r ea sf o l l o w s : p u tf o r w a r dan e ws y n c h r o n i z a t i o ns o l u t i o nb e t w e e nh e t e r o g e n e o u sd a t as o u r c e sb a s e d o ns y n c m lp r o t o c o l ,w h i c hi se x t e n s i b l ea n de a s yt od e s i g na n du s e ,m o r er e a l i s t i ca n d f l e x i b l es o l u t i o nf o rm o b i l ec o m p u t i n ge n v i r o n m e n t t h i ss o l u t i o nc a nk e e pal o n gp e r i o do f s t a b i l i t y p u tf o r w a r das u i to fm e c h a n i s mc o m p o s e do fm e d i ad a t as t r u c t u r ea n dt r a n s f o r m a t i o n r u l e sb e t w e e nd a t as t r u c t u r e s ,w h i c hc a nh e l ps y n c m lp r o t o c o lt ot r a n s f e rp a t t e r n s i n f o r m a t i o no f d a t as o u r c e sw i t h o u ta n yc h a n g et os y n c m l ss p e c i f i c a t i o ns e l p u tf o r w a r dam o d e l ,w h i c hi sd r o v e db ym a p p i n gr u l e s ,t op r o d u c em a p p i n g r e l a t i o n s h i p s b e t w e e np a t t e r n so fd i f f e r e n td a t as o u r c e s p r i m a r yc l a s s i f i c a t i o n so f h e t e r o g e n e o u ss o u r c e sa r ea n a l y z e d a c c o r d i n gt ot h ec l a s s i f i c a t i o n s ,b a s i cr u l e s e ti s d e s i g n e da sag u i d ef o rm a p p i n gp r o c e s s t h ec o m p o s i t i o no fm o d e la n db a s i cr u l es e tc a n p r o d u c em a p p i n gr e l a t i o n s h i p sa u t o m a t i c a l l ya n de n h a n c et h ee x t e n s i b i l i t yo ft h e n e w s y n c h r o n i z a t i o ns o l u t i o n a s y n c h r o n i z a t i o ns y s t e mf o rh e t e r o g e n e o u ss o u r c e si sd e s i g n e da n dr e a l i z e d w h i c hh a s t h ee a s y - e x t e n s i o na n de a s y - m a i n t e n a n c ec h a r a c t e rb yd e s i g n so fh i e r a r c h yd a t am o d e l , c o m p a t i b l es o u r c e sa c c e s sm o d e l ,a n dc o n v e n i e n ts e c u r i t y - a c c e s s i b l em o d e l af l e x i b l el o g i c s t r u c t u r ei sc r e a t e ds p e c i a l l yf o rt h el e v i t yo fc o n f l i c t - r e s o l v i n ga n dh e t e r o g e n e o u sm a p p i n g l c l g i c s o ,t h ee n t i r es y s t e mc a ns a t i s f yd i f f e r e n tr e q u i r e st ot h em a xe x t e n t k e yw o r d s :d a t as y n c h r o n i z a t i o n , h e t e r o g e n e o u s d a t a s o u r c e s ,s y n c m lp r o t o c o l , c o n f l i c t r e s o l v i n g ,p a t t e r nm a p p i n g i v 声明 我声明本论文是我本人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,本论 文中不包含其他人已经发表或撰写过的研究成果。与我一同工作的同 志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了 谢意。 作者签名:彦蟛磁日期:劲口多争,7 论文版权使用授权书 本人授权中国科学院计算技术研究所可以保留并向国家有关部 门或机构送交本论文的复印件和电子文档,允许本论文被奄阅和借 阅,可以将本论文的全部或部分内容编入有关数据库进行检索,可以 采用影印、缩印或扫描等复制手段保存、汇编本论文。 ( 保密论文在解密后适用本授权书。) 作者签名:鸯磁美,导师签名: 1 1 研究背景及意义 1 1 1 移动计算环境的产生和发展 第一章绪论 移动设备和无线通讯技术的发展带动了移动计算环境的发展。在一个移动计算环境 中,移动设备( m o b i l e d e v i c e ) ,例如个人数字助理( p d a :p e r s o n a l d i g i t a l a s s i s t a n t ) , 智能手机,掌上电脑取代了传统的个人计算机( p c ) ;无线通讯( w i r e l e s s c o m m u n i c a t i o n ) ,例如蜂窝通讯,红外通讯等取代了传统的有线通讯。这些改变都给 传统的计算环境带来了新的挑战,并将深深地影响人们的生活、工作方式。 移动计算环境具有以下一些特点【1 1 1 2 1 1 3 】: 移动信息设备资源有限:尽管硬件技术日新月异,但目前的便携式移动信息设 备和个人电脑相比,在计算能力、存储能力、电源、屏幕等方面资源还十分有限。 要求对设备移动性的支持:传统的计算环境中,设备是固定的。而在移动计算 环境中,设备可以任意移动,而且要求在移动过程中仍然要保持通讯和信息的处理。 频繁的断连性:由于设备移动性所带来的网络环境的变化,以及昂贵的无线通 讯费用,移动计算环境中的移动信息设备和移动支持站之间可能会经常处于主动或者被 动的锻炼状态。这就要求移动计算环境系统的应用程序在锻炼的断连的情况下仍然可以 正常操作。 无线网络通讯的不平衡性:在无线通讯中,由于物理通信媒介的限制,一般的 无线网络通信都是非对称性的,表现在固定服务器节点可以拥有强大的发送设备,而移 动信息设备的发送能力非常有限,于是下行链路( 从服务器到移动节点) 的通信带宽和 代价与上行链路相差很大。这就要求系统的设计和实现要充分考虑这种差异,以便最大 化利用有限的网络资源。 网络条件的差异:在移动计算环境中,由于设备的移动性,使得设备在不同的 时间出于不同的空间中,这直接导致了网络条件( 例如网络带宽、网络可靠性等方面) 的不同。因此移动计算系统必须考虑系统的灵活性和适应性,以消除不同的网络条件带 来的差异。 如今,移动计算已经成为了一个独立的学科分支,覆盖了许多领域的研究课题,例 如移动计算硬件设备技术、移动通信技术、移动网络技术以及应用层的各种技术( 如无 线w w w 访问、移动数据库技术、无线客户服务器应用) 等方面【3 1 。 近些年来,移动计算的发展还带动了一个更为广泛的研究领域,称为普适计算 ( p e r v a s i v ec o m p u t i n g ) 或者无处不在的计算( u b i q u i t o u sc o m p u t i n g ) 【4 】。该领域的先 1 中国科学院研究生院硕士生论文一移动计算环境下的异构数据源同步方案的设计弓实现 锋人物m a r kw e i s e r 把普适计算作为计算领域的第三次浪潮。它比移动计算延伸的范围 更广,连接到网络中的设备不再局限于通常的信息设备,而是任何电子设备。 1 1 2 移动计算环境引发数据同步需求 近来移动设备的增长导致分部信息的显著增长。在移动计算模式下,用户可以随时 随地访问数据;无论是通过p c ( 功能较强,可以连接到互联网) 、p d a 还足笔记本电 脑( 功能较弱,只能间歇的连接互联网) 。 移动设备用户往往需要访问自己设备上没有的数据信息,如移动电话用户需要p d a 上的电话簿信息,还有实时邮件信息经常在服务器上。而且用户不仅希望访问这些数据, 并且需要随意更改这些数据。 移动用户或许不希望持续连接到网络上,因为费用昂贵。他们想从网络上下载所需 数据到相应移动设备上,然后在本地进行操作和更改。这些移动设备周期性的连接到网 上发送本地修改同时也会下载在断开连接过程中由其他用户所做的修改。 更重要的是,移动计算环境为协同工作提供了更好的基础条件。多个用户可以利用 各自的移动终端和无线网络,共享数据资源,完成协同工作的目标。因为应该允许用户 修改、操作共享的数据,同时这些变化应该可以及时反应给其它用户,帮助用户群体正 确地进行后继工作。 若需要系统提供诸如此类随意访问数据和协同工作的功能,一个必需要解决的问题 就是网络上各信息版本的一致性问题。换句话说,也就是用户在移动状态下对数据所做 的修改应该可以反应到在家里或办公室的所有数据副本上,反之亦然。这时有可能需要 解决在若干个版本的修改中存在的冲突。 综上所述,需要在移动计算环境下引入数据同步功能,帮助设备之间交换彼此的修 改并解决可能存在的冲突。 1 1 3 课题的产生 移动环境下数据同步有别于传统的同步技术,它的目标是在移动网络范围内实现任 意数据源之间的数据同步,参与同步的对象具有更强的独立性和多样性。根据这种新的 目标和应用环境,人们对实现数据源同步的技术产生了新的要求。为此,本文针对这种 变化以及由此产生的问题展开了细致的研究与分析。 由于在移动环境下,相互协作的数据源不仅包括数据库还有各种应用信息,例如通 信簿,日程表等p i m 数据( 个人数字助理信息) 。由于历史、地域和各种生产商等种种 原因,这些数据源类型、版本,甚至结构可能都不同,往往不能放在一个系统控制下。 但是彼此的数据交流又是大量而频繁的,由人工来完成是不切实际的。那么在这种情况 下如何自动地实现两端数据的同步呢? 2 第一章绪论 不同移动电话生产商出品的移动通讯簿格式之间彼此不同,更不要说数据库产品 了。在复杂的数据应用系统中,往往分为中心的大型数据库和若干便于应用的小型数据 库直接于使用者交互。中心数据库肩负着复杂的数据管理和查询工作;小型数据库则从 效率和占用资源考虑设计更加简单,只能承担单一操作和查询。那么小型数据库的模式 没有必要与中心数据库一致的模式。然而传统的同步技术来源于多版本复制的一致性需 求,所以考虑的同步双方一般是同构的。这样给用户使用带来不便,特别是在协同工作 的情况下。例如,对于需要共享手机通讯簿以协同工作的用户,如果彼此的移动终端异 构将无法按照原始的同步方法保持协作用户数据的一致性。所以有必要研究异构数据源 的同步技术。 1 2 异构数据源同步的相关技术研究综述 1 2 1 同步技术 依靠研究的重点不同划分,对数据同步的研究集中于两方面:数据库同步技术和数 据同步协议。 1 2 1 1 数据库同步技术 结合移动计算背景,主要介绍移动数据库技术。在移动数据库领域,与数据同步相 关的研究集中于数据一致性技术。 如何保证各个移动结点和服务器间的数据一致性问题是移动数据库中的重要和关 键问题。这个研究方向可以分为两个方面,一是数据复制和同步,另一个是移动事务模 型。 在移动数据库系统中,移动设备经常处于和服务器断连的状态。为了支持移动数据 库在断连的情况下对数据的操作,引入数据复制技术,以便支持在本地数据副本上的事 务操作。当移动设备再次和服务器连接时,需要进行上载方向和下载方向的同步。关于 移动数据库的复制同步技术,大量的研究工作已被进行,相应的也取得了一些研究成果 f 8 1 。 人们已经提出了许多适合移动计算环境的复制同步策略,我们可以将这些同步机制 划分为两种类型:一种是两次分别在移动结点和和主数据库上执行移动事务和基事务【5 】, 并通过比较两次事务的执行结果来判断移动事务是否能全局提交。这类方法的典型代表 是两级复制算法( t w o t i e rr e p l i c a t i o na l g o r i t h m ) 【5 1 ;另一种是通过比较移动事务结果集 的传递和合并来完成同步,不需要两次执行事务,通过比较结果集所依赖的原始值来判 断移动事务的结果集是否能全局提交。由于实现较为简单,这种方法在许多商用移动数 据库中被采用,如s y b a s eu l t r a l i t e 和m o b i l i n k t 6 l | 7 同步服务器,i b md b 2e v e r y p l a c e l 8 1 中国科学院研究生院硕士生论文一移动计算环境下的异构数据源同步方案的设计与实现 等。 对于同步冲突的解决策略,通常办法有两种:协调( r e c o n c i l i a t i o n ) 和回滚( r o l l b a c k ) 。 当出现冲突时,协调解决这种冲突能提高全局提交率,但通常这需要用户参与到冲突解 决的过程中,例如 9 1 中描述的b a y o u 系统,这增加了用户的负担;另一种方法是 通过具体应用的特定语义信息来辅助协调解决冲突,例如【1 0 】中作者讨论了基本的对 象语义,但这些语义通常于具体应用密切相关,这使系统的通用性大大下降。若采用回 滚来解决冲突,则不存在这类问题,但全局提交率又会比采用协调方式的系统低。 事务是数据库理论的重要概念,传统数据库事务将断连的情况设为故障,所以针对 移动计算环境下提出移动事务,对于移动事务的管理成为关键。在【l l 】中作者引入移 动事务的概念。一个移动事务是指由移动用户发起的,并且至少有一个移动用户参与事 务执行过程的事务。由于移动事务不同于传统数据库事务,移动事务模型通常对传统事 务特性的支持都做了不同程度的放松,以期获得理想的性能。比较有代表性的移动事务 模型有簇模型( c l u s t e r i n g ) 1 2 1 、p r p m o t i o n 模型【1 3 】【1 、k a n g a r o o 模型1 5 1 、m d s t p m 模型1 6 1 等。 1 2 1 2 数据同步协议 数据同步协议的任务是快速识别出各版本的变化,解决可能的冲突,并传输同步数 据到不同的同步设备。对于前两个功能,同步协议需要依靠数据库的相应功能来帮助完 成,但是同步协议必须定义这两个功能在同步过程中的执行时机,也可以在协议中定义 为方便实现这些功能所作的改进设计。 同步协议必需谨慎制定,因为同步的移动设备往往资源有限。比如p d a ,它依靠串 口或带宽为1 0 - - 1 0 0 k b s 的无线接口完成交互,并且拥有有限的c p u ,内存和能源。因 此,它不能快速的传输大量数据【”1 。而且实际同步过程涉及的设备不同,依靠的传输介 质也不同。这样,要实现统一的同步应该满足两个条件:移动设备可以同步任何种类的 数据:任意移动设备之间都可以同步。 目前比较普遍的同步协议有h o t s y n cp r o t o c o l ,i n t e l l i s y n e ,s y n c m l 以及c p i s y n c 等。因为s y n c m l 从设计的早期就关注任意设备之间数据的统一同步问题且专门为偶连 接、资源有限的移动设备设计,我们下面对其进行详细介绍: 到现在为止,已经为不同种类的移动设备增加很多用来同步不同的,尽可能多的数 据所需要的协议,这些协议中的每一个仅适用于在一个选定的设备子集上进行选定的传 输和运行,并且可以访问一部分网络数据,单一同步标准的缺乏为最终用户、设备制造 商、应用程序开发者和设备提供商制造了很多问题【1 8 1 。为此,i b m 、l o t u s 、m o t o r o l a 、 虹a 、p a l r ni n e 、p s i o n 、s t a r f i s hs o f t w a r e 合作形成了同步协议的标准草案并希望该草 案将会发展成为一个通用的可以被用在工业界的同步协议,这就是s y n c m l 。 s y n c m l 的设计目标有两方面:在网络数据与任意设备之间实现同步;在移动设备 4 第一章绪论 与任意网络数据之间实现同步。前者强调一个用户可以在不同的设备上访问、操作同样 的数据集合,举个例子,用户可以使用掌上设备或者移动电话阅读电子邮件,还可以维 护一个一致的、更新的纪录;后者强调同步两端可以使用任意类型,这使得移动设备可 以支持更多数据类型,包括电子邮件、日历、事务管理信息、数据库中的企业数据和 w c b 文档。例如,使得想要通过电子邮件接收订单的用户可以在同样的设备上访问公司 的目录清单系统,来最后决定交付日期。为了实现这一日标,s y n c m l 被设计成平台、 网络、应用无关性协议,允许“a n y - t o a n y ”同步,因此可以用于访问任何种类的数据【1 鄹。 s y n c m l 的基础是x m l ,所以他尤其适用于参与同步的设备都以不同方式存储同步 数据。并且使用彼此不同的软件系统的情况。它有六大优剧1 9 1 : 可以有效跨越有线网和无线网 它可以利用s i n g l er e q u e s t r e s p o n s em e s s a g em o d e l 和w b x m l 克服无线网的缺点 ( 高时延、有限带宽、低可靠性) 。 支持多种传输协议和媒介 被支持的协议包含h t t p ,w s p 、o b e x 、s m t p 等。 支持任意网络数据 该协议只描述在网络传输中的同步数据格式。 支持多种应用的数据访问 s y n c m l 协议与具体的编程语言无关。 专门对资源受限的移动设备进行优化 在s y n c m l 实现中,需要交换的数据量( 也可以被编译成二进制格式以减少解析和 处理数据所需的资源) 很小,相应的用来在设备间传输数据的代码也很少。 建立在现存的网络和w e b 技术之上。s y n c m l 的协议框架如下: 描述如下:应用a 代表同步过程的服务器端,应用b 代表同步过程的客户端。客 户端与服务器通过网络传输连接( h t t p 、w s p ) 。客户端通过客户同步代理访问网络, 曰。固:固 中国科学院研究生院硕士生论文一移动计算环境下的异构数据源同步方案的设计与实现 通过代理结合s y n c m l 接1 2 ( s y n c m li f ,是相对于适配器的a p i ) 以及适配器发消息 给服务器端。服务器通过服务器同步代理接受或发送消息,通过s y n ee n g i n e 管理同步过 程。举例而言,客户端首先向s y n c m l 服务端发送关于自己做的数据变化的消息,服务 端接受消息后进行本地同步再将修改信息返回给客户。 应用程序a 是一个网络服务器,其它网络设备可以跟它进行数据同步,在这里和服 务器a 进行数据同步的是应用程序b 。服务器和客户端通过底层网络进行连接( 如h t t p ) a 和b 遵循同一协议,a 通过“s y n e e n g i n e ”来处理和用户有关的操作,例如用户数据 库更新和冲突处理,数据同步协议通过网络上客户端应用程序来验证,存取网络资源。 即“s e r v e ra g e n t ”管理“s y n ee n g i n e ”对网络的访问,以此来控制和客户端的数据同 步,它会根据协议处理客户端来的消息,通常会调用一些系统相关函数,通过“s y n es e r v e r a g e n t ”可以实现系统无关性,便于移植。”s y n es e r v e r a g e n t ”通过调用“s y n c m l i f ” 和其它一些接1 2 函数实现这些功能。”s y n c m li f ”尼s y n e m la d a p t e r ”的a p i ”s y n c m l a d a p t e r ”处理同步的连接、发送和接收,同时它也是框架中的实体一网络传输接口,在 a 和b 之间建立和维护一个网络连接。客户端的模块功能类似服务器端。 s y n c m l 有两套协议组成:s y n c m l 表达协议和同步协议。前者用来引导框架中的 行为,由一套完整定义的同步消息组成;后者引导客户与服务者之间的行为,以消息时 序图的形式描述了客户与服务者之间的同步执行步骤,是获得数据同步服务的核心。同 步类型包括双向同步和单向同步两种。 s y n c m l 消息是结构严密的x m l 文档形式。文档由头和体组成:头包括路由和版 本信息:而体相当于多条同步命令的容器。同步命令元素又包括描述同步命令的元素, 例如同步数据元,这里体现了s y n c m l 的特色:同步数据格式定义( 对于所接受的各种 数据的类型描述如c a l e n d a r ) ;同步能力定义( 用于描述客户与服务端之间交换的设备 支持能力信息) 。 s y n c m l 协议作为一种特别为移动计算环境设计的同步协议,普遍被移动设备厂商 和移动中间件开发商选择作为数据同步的解决方案。但是,目前以s y n c m l 协 义为基础 的同步解决方案主要集中于同构数据源之间的同步,对异构数据源之间同步的研究较 少;而且,同步设备上存储的数据元结构往往并不相同,这样难以满足在移动计算环境 中的任意设备之间的同步需求。针对上述问题,急迫需要提出一种在不改变s y n e m l 协 议规定的消息和同步步骤的条件下,完成不同结构数据源之间无缝同步的方法,这也是 本文的主要目的。 1 2 1 3 数据库同步技术和同步协议的联系和区别 传统的数据库同步技术是被用来解决各个独立的系统中的数据库服务器间的数据 同步问题的,通过及时地更新本地数据库复本内容,从而使得各地终端用户及时、快捷、 可靠地访问到最新公告、新闻等。它的特点是在某一集中控制的数据库同步构架下,在 6 第一章绪论 同种或可兼容的数据库之间进行数据复制与同步,同步的数据一般是同构的。同步协议 是为了方便的在网络环境下实现不同数据源间自动地、实时地数据交换,以达到某一时 间范围内数据的一致性。它对数据同步的定义和所要达到的数据一致的目的与数据库系 统中的数据同步一致。 然而同步协议和传统的数据库同步二者在应用环境和所面对的同步对象上又有很 大的差别。数据库同步的本质是一套数据库间数据复制和同步的方法,专门用于在支持 各个数据库平台之间复制和同步数据,它的同步对象只能是同类数据库或可兼容的数据 库。而同步协议要解决的是网络范围内已经存在的各种类型、各种版本的数据平台之问 进行数据的自动交换,同步对象具有更强的独立性和多样性,可能是不同厂商的数据库, 可能是灵活的p i m 数据,还可能根本是不同种类的数据源。由于应用上的差别,二者的 功能目标自然也就不同。 数据库同步技术的目标足

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论