事务处理是数据库管理系统的一个基本功能,主要用于维护数据的一致性,支持多用户的并发访问,使用户可以可靠地查询和更新数据库。一般来说,用户对数据库系统的访问都是通过事务来完成的。在传统的数据库系统中,一个事务由一系列读写操作组成。事务处理必须满足四个准则,即原子性、一致性、隔离性和永久性(简称ACID)。移动计算环境的特点,使传统数据库系统中的事务处理技术不能满足移动事务处理的要求。
通常,将移动客户机发出的事务叫移动事务,它属于分布事务。移动事务处理具有以下特点:
①移动性。这不仅指移动事务执行期间,发出事务的移动客户机是移动的,而且事务本身也在相应地移动。
②长事务。由于无线网络通信的低带宽、高延迟以及移动客户机的频繁断接性,都可能使移动事务成为长事务。
③易错性。由于移动客户机不如固定结点可靠,而且无线网络通信也不如固定网络稳定,因此,与一般事务相比,移动事务更容易出错。
④异构性。由于客户机的移动性,移动事务可能要访问分布的异构数据库系统。
总之,移动事务不同于传统事务,传统的ACID模型已不能很好地描述移动事务,需要为移动事务寻找更好的模型。维护数据的一致性和解决过区切换(handoff)问题是移动事务管理的重要任务。
3 移动Agent技术
Agent的研究起源于人工智能领域。Agent是指模拟人类行为与关系,具有一定智能并能够自主运行和提供相应服务的程序。移动Agent是一个能够在异构网络中自主地从一台主机迁移动另外一台主机,并可与其它Agent或资源交互的程序。实际上它是Agent技术与分布式技术的混血儿。移动Agent具有自主性、移动性、协作性、安全性、智能性等特性。
传统的分布式计算基于Client/Server体系结构,其带宽耗费严重,网络负载不均衡,容错能力较差。移动Agent作为全新分布式计算工具,通过将自身代码、状态传送到远程主机,并在远程主机执行的方式克服了Client/Server方案的不足之处,因而成为分布式计算的主要发展方向之一。
与Client/Server方案相比,移动Agent具有以下几大优势:移动Agent通过移动到服务器端工作并把最终数据传回客户机,可以节省网络带宽;移动Agent减少了费时的网络传输,并且在规模较大的数据库操作中Agent能实现本地操作,可以节省时间;移动Agent移动到服务器端直接传回最终结果,避免了中间数据的传输延迟;一旦移动Agent从客户端传输到另一台主机上,这台机器就可以和网络断开连接直到想回收Agent或再次传送Agent,即整个系统可工作在异步方式;移动Agent可以轻易地从一个平台移动到另一个平台,它们带着自身代码移动到目的机器上无须预先安装就能运行,可以很方便地实现负载平衡;移动Agent可以感知环境的变化并作出反应,多个移动Agent可以动态地调整分布以维护最优配置。
基于移动Agent嵌入式移动数据库改革了传统的远程查询数据库的SQL查询方法,把查询任务存储到一个可通过网络进行移动的Agent上,Agent将移动到服务器上,执行查询并在座结论,然后返回到用户并打印结果。在这个过程中,我们把查询任务分解为单个的查询方法,而这些指令在网络上的合适地点会被唤醒并执行。通过将移动Agent技术引入嵌入式移动数据库中,有助于实现嵌入式移动数据库查询优化。
结语
移动计算的研究覆盖了许多领域,如移动硬件设备、移动通讯、移动联网技术、无线WWW访问、移动数据库技术、无线客户/服务器应用等。随着互联网和无线通讯技术的发展,移动数据库的需求正在不断增加,其技术正在成为国际数据库界的一个研究方向。由于移动数据库自身的移动性、断接性、带宽的有限性、网络通信的非对称性以及电源电量的有限性等特性,决定了移动计算环境不同于传统的分布计算。Agent技术是计算机领域的一个研究热点,是一个能独立运行的智能体。现在,将移动Agent技术应用于分布式系统和网络管理等方面取得了很好的效果。总之,随着人们对信息需求的不断增加,无线网络和通信技术的不断进步,移动数据库领域的研究大有希望,必将为人类带来巨大的商业和社会价值。