随着移动计算技术的发展,移动数据库逐步走向应用,在嵌入式操作系统中移动数据库更显示出其优越性。本文分析移动数据库的特点、体系结构;介绍移动数据库系统中的一些关键性技术,并指出了移动数据库应用方向。
嵌入式系统;移动数据库;移动计算;事务处理0引言
数据库技术一直随着计算的发展而不断进步,随着移动计算时代的到来,嵌入式操作系统对移动数据库系统的需求为数据库技术开辟了新的发展空间。随着智能移动终端的普及,嵌入式移动数据库技术目前已经从研究领域逐步走向广泛的应用领域。
在数据库系统的研究历史中,传统的分布计算与分布式数据库的研究是基于有线网络和固定主机的。这些都采用了一些默认的隐含假设,例如固定网络连接、对等通信代价、主机节点固定不变等。但进入20世纪90年代以来,随着移动通信技术和网络技术迅速发展,加之移动计算机和移动通信设备的大量普及,许多计算节点可以在移动过程中与网络建立连接,使得上述假设条件不成立。移动计算环境具有移动性、低带宽、频繁断接性、网络通信的非对称性、电源电力的有限性等特点,使得传统分布式数据库中的方法和技术不能直接应用于移动数据库。
嵌入式移动数据库的定义
从数据库技术的发展过程来看,计算环境和数据库技术基本保持着一种同步发展的态势,互相影响、互相促进。移动计算的概念是对“任何时间、任何地点的立即通”的扩展。在分布式计算的基础上,计算环境进一步扩展为包含各种移动设备、具有无线通信能力的服务网络,构成了一个新的计算环境,即移动计算环境。相应地,数据库系统先后出现了集中式数据库系统、分布式数据库系统、B/A/S多层结构的数据库系统、嵌入式数据库和移动数据库。当然,这些系统也可以共存在同一个计算环境中。
一般说来,嵌入式移动数据库可以从系统的体系结构方面来定义:嵌入式移动数据库系统是支持移动计算或某种特定计算模式的数据库管理系统,数据库系统与操作系统、具体应用集成在一起,运行在各种智能型嵌入设备或移动设备上。其中,嵌入在移动设备上的数据库系统由于涉及数据库技术、分布式计算技术,以及移动通技术等多个学科领域,目前已经成为一个十分活跃的研究和应用领域——嵌入式移动数据库或简称为移动数据库。
嵌入式移动数据库的体系结构及其主要特点
体系结构
在传统的分布式计算系统中,各个计算节点之间是通过固定网络连接并保持网络的持续连接性的,而移动计算系统改变了这种假设条件。移动计算系统是固定节点和移动节点构成的分布计算系统。
移动计算的网络环境具有鲜明的特点:移动性、断接性、带宽多样性、可伸缩性、弱可靠性、网络通信的非对称性、电源能力的局限性等。移动环境中的分布式数据库就是移动数据库。它是传统分布式数据库系统的扩展,可以看作客户与固定服务器节点动态连接的分布式系统。移动数据库系统的体系结构如图1所示。
其中,移动客户机MC包括便携式电脑、PDA等;MSS支持移动计算的固定节点,具有无线通信接口;FH没有无线通信接口,安装有数据库和数据库管理系统。
主要特点
移动数据库的计算环境是传统分布式数据库的扩展,它可以看作客户端与固定服务器节点动态连接的分布式系统。因此移动计算环境中的数据库管理系统是一种动态分布式数据库管理系统。由于移动数据库在移动计算的环境下应用在嵌入型操作系统之上,所以它具有:微小内核结构、对标准SQL的支持、事务管理功能、完善的数据同步机制、支持多种连接协议、完备的数据库管理功能和支持多种嵌入型操作系统的特点和功能需求。在移动数据库中还需要考虑诸多传统计算环境下不需要考虑的问题,如对断接操作的支持、对位置相关查询的支持、对查询优化的特殊考虑以及对提高有限资源的利用率和对系统效率的考虑等等。为了有效地解决上述问题,诸如复制与缓存技术、移动事务处理、数据广播技术、移动查询处理与查询优化、位置相关的数据处理及查询技术、移动发布技术等技术仍在不断的发展和完善,它们会进一步促进移动数据库技术的发展。
嵌入式移动数据库的关键技术
移动数据库涉及的理论和技术含盖了当今通信、计算机和嵌入式系统的最新成果,其中在移动环境下如何进行数据管理是实现移动数据库的关键。根据目前国际有关机构研究的研究表明这些关键技术主要集中在以下几个方面。
数据复制与缓存
复制是在多个移动节点上维护数据的备份,包括服务器之间的复制和移动计算机上保存数据库的复制。一般前者称为复制后者称为缓存。复制的主要目的是提高分布式数据库系统的可用性、可靠性和访问性能。首要的问题是如何维护多个复制节点上数据状态的一致性。按照维护复制一致性的方式来划分,现有的复制协议可以分为严格一致协议和弱一致协议两种。严格一致协议要求任何时刻所有数据库的复制都是一致的;而弱一致协议允许各个复制之间存在暂时的不一致,但这种不一致总能够保持在一定的界限之内,而且总是能够趋于一致。目前,针对移动计算特点开展数据复制/缓存技术的研究最具代表性的是:J.Gray的两级复制机制、 CODA系统以及缓存失效报告广播技术等,另外,SYBASE公司的移动数据库产品SQLANYWHERE和SQLREMOTE也采用该技术来支持移动计算环境。
数据广播
通俗地讲,数据广播是指在移动计算环境中,利用客户机与服务器通信的不对称性,以周期性广播的形式向客户机发送数据。其最大的优点是,广播开销不依赖移动用户数量的变化而变化,借助数据广播,可以在一定程度上解决移动数据库系统的断接问题。数据广播的研究可分为服务器和客户机两个方面:服务器主要考虑如何组织广播数据,即数据广播的调度;移动节点主要考虑如何利用本地缓存进一步减少查询广播数据的时间。在国内,长沙国防科技大学的周兴铭院士对数据广播进行了深入研究,提出了数据广播的多盘调度算法。衡量数据广播调度算法好坏的参数是访问时间和调谐时间。