3嵌入式移动数据库的关键技术
移动数据库涉及的理论和技术含盖了当今通信、计算机和嵌入式系统的最新成果,其中在移动环境下如何进行数据管理是实现移动数据库的关键。根据目前国际有关机构研究的研究表明这些关键技术主要集中在以下几个方面。
3.1数据复制与缓存
复制是在多个移动节点上维护数据的备份,包括服务器之间的复制和移动计算机上保存数据库的复制。一般前者称为复制后者称为缓存。复制的主要目的是提高分布式数据库系统的可用性、可靠性和访问性能。首要的问题是如何维护多个复制节点上数据状态的一致性。按照维护复制一致性的方式来划分,现有的复制协议可以分为严格一致协议和弱一致协议两种。严格一致协议要求任何时刻所有数据库的复制都是一致的;而弱一致协议允许各个复制之间存在暂时的不一致,但这种不一致总能够保持在一定的界限之内,而且总是能够趋于一致(收敛性)。目前,针对移动计算特点开展数据复制/缓存技术的研究最具代表性的是:J. Gray的两级复制机制、CODA系统以及缓存失效报告广播技术等,另外,SYBASE公司的移动数据库产品SQL ANYWHERE和SQL REMOTE也采用该技术来支持移动计算环境。
3.2数据广播
通俗地讲,数据广播是指在移动计算环境中,利用客户机与服务器通信的不对称性,以周期性广播的形式向客户机发送数据。其最大的优点是,广播开销不依赖移动用户数量的变化而变化,借助数据广播,可以在一定程度上解决移动数据库系统的断接问题。数据广播的研究可分为服务器和客户机两个方面:服务器主要考虑如何组织广播数据,即数据广播的调度;移动节点主要考虑如何利用本地缓存进一步减少查询广播数据的时间。在国内,长沙国防科技大学的周兴铭院士对数据广播进行了深入研究,提出了数据广播的多盘调度算法。衡量数据广播调度算法好坏的参数是访问时间和调谐时间。
3.3位置相关查询优化
在移动数据库中,存在着与位置相关信息的查询及更新。查询通常是与位置相关的,即使是同一个问题,在不同的地方,所得查询结果是不同的,如“最近的超市在哪里?”。移动查询优化技术是指在传统分布式数据库查询优化技术的基础上,利用多种方法,消除带宽多样性、断接等因素造成的影响,使查询引擎能够根据当前可用网络条件采取恰当的优化策略;同时,针对移动计算机有限电源能力,合理地组织本地数据库管理、远程数据库访问等耗电能较多的操作,达到节能目的,延长关键数据的可用时间。
采用基于分割的地址更新策略时,由位置服务器维护的移动用户对象包含以下数据成员和方法:
分割集合——记录MSS的分割情况,例如{Cell1,Cell2},{Cell3,Cell4,Cell5};
LOC——记录移动用户最近报告的地址(无线单元的ID),例如Cell1 ;
ERR——移动用户当前所在的分割,例如,若LOC= Cell1 ,则ERR={Cell1,Cell2};
loc()——一个方法,用于返回该用户的实际地址,即上面介绍的地址查询过程。
在移动查询的应用中,有各种各样涉及地址的查询,例如“请寻找一家校园附近的超市”,“查找X, Y, Z,这三人都在同一条公路上,且Y在X与Z之间”,等等。一般地,可以把这一类地址相关查询表示为:
SELECT x1 ,x2 ,…, xn
FROM Users
WHERE (x1.loc=l1 ∧…∧ xn.loc=ln ) ∧ C(l1,…,ln ) ∧ W(x1 ,…, xn )
其中C(l1, …, ln )是关于地址l1, …, ln 的n元约束条件,而 W(x1, …, xn ) 是关于对象x1 ,x2 , …, xn 非地址属性的n元约束条件,Users 是所有移动用户的集合。
3.4移动事务处理
事务处理是数据库管理系统的一个基本功能,主要用于维护数据的一致性,支持多用户的并发访问,使用户可以可靠地查询和更新数据库。一般来说,用户对数据库系统的访问都是通过事务来完成的。在传统的数据库系统中,一个事务由一系列读写操作组成。事务处理必须满足四个准则,即原子性、一致性、隔离性和永久性(简称ACID)。移动计算环境的特点,使传统数据库系统中的事务处理技术不能满足移动事务处理的要求。
