数据库技术一直随着计算的发展而不断进步,随着移动计算时代的到来,嵌入型操作系统对移动数据库系统的需求为数据库技术开辟了新的发展空间。
随身携带的数据库
金颖云
移动计算使得计算机或其他信息设备在没有与固定的物理连接设备相连的情况下能够传输数据。所谓移动数据库是指支持移动计算环境的分布式数据库,通常应用在诸如掌上电脑、PDA、车载设备、移动电话等嵌入型设备中。
移动计算环境比传统的计算环境更为复杂和灵活。计算平台的移动性、连接的频繁断接性、网络条件的多样性、网络通信的非对称性、系统的高伸缩性和低可靠性以及电源能力的有限性等因素对移动数据库的性能提出了相当高的要求。移动技术的发展必将对移动数据库的发展起强大的推动作用,同时移动数据库的发展也能促进移动计算的广泛应用。
关键问题
移动数据库在实际应用中必须解决好数据的一致性(复制性)、高效的事务处理、数据的安全性等问题。
● 数据的一致性
移动数据库的一个显著特点是移动终端之间以及与服务器之间的连接是一种弱连接,即低带宽、长延迟、不稳定和经常性的断开。为了支持用户在弱环境下对数据库的操作,现在普遍采用乐观复制方法(Optimistic replication 或Lazy replication)允许用户对本地缓存上的数据副本进行操作。待网络重新连接后再与数据库服务器或其他终端交换数据修改信息,并通过冲突检测和协调来恢复数据的一致性。
● 高效的事务处理
移动事务处理要解决在移动环境中频繁的、可预见的拆连情况下的事务处理。为了保证活动事务的顺利完成,必须设计和实现新的事务管理策略和算法。
1)根据网络连接情况来确定事务处理的优先级,网络连接速度高的事务请求优先处理。
2)根据操作时间来确定事务是否迁移,即长时间的事务操作将全部迁移到服务器上执行,无需保证网络的一直畅通。
3) 根据数据量的大小来确定事务是上载执行还是下载数据副本执行后上载。
4)事务处理过程中,网络断接处理时采用服务器发现机制还是采用客户端声明机制。
5)事务移动(如:位置相关查询)过程中的用户位置属性的实时更新。
6)完善的日志记录策略
● 数据的安全性
许多应用领域的嵌入型设备是系统中数据管理或处理的关键设备,因此嵌入型设备上的数据库系统对访问权限的控制较严格。同时,许多嵌入型设备具有较高的移动性、便携性和非固定的工作环境,也带来潜在的不安全因素。同时某些数据的个人隐私性又很高,因此在防止碰撞、磁场干扰、遗失、盗窃等对个人数据安全的威胁上需要提供充分的安全性保证。保证数据安全的主要措施是:第一,对移动终端进行认证,防止非法终端的欺骗性接入;第二,对无线通信进行加密,防止数据信息泄漏;第三,对下载的数据副本加密存储,以防移动终端物理丢失后的数据泄密。
主要特性
移动数据库的计算环境是传统分布式数据库的扩展,它可以看作客户端与固定服务器节点动态连接的分布式系统。因此移动计算环境中的数据库管理系统是一种动态分布式数据库管理系统。由于移动数据库在移动计算的环境下应用在嵌入型操作系统之上,所以它有自己的特点和功能需求。
微小内核结构
考虑到嵌入型设备的资源有限,移动数据库应采用微型化技术实现,在满足应用的前提下紧缩其系统结构以满足嵌入型应用的需求。
对标准SQL的支持
移动数据库应能提供对标准SQL的支持。支持SQL92标准的子集,支持数据查询(连接查询、子查询、排序、分组等)、插入、更新、删除多种标准的SQL语句,充分满足嵌入型应用开发的需求。
事务管理功能
移动数据库应具有事务处理功能,自动维护事务的完整性、原子性等;支持实体完整性和引用完整性。
完善的数据同步机制
数据同步是移动数据库最重要的特点。通过数据复制,可以将移动数据库或主数据库的变化情况应用到对方,保证了数据的一致性。移动数据库管理系统应具有以下的特点:
1)提供多种数据同步方式。具有上载同步、下载同步和完全同步三种同步方式。
2)具有完善的冲突检测机制和灵活的冲突解决方案,具有冲突日志记录功能。
3)支持快速同步。系统同步时,只传递变化的数据,节省了大量的同步时间。
4)支持表的水平分割和垂直分割复制,最大限度地降低了移动数据库的大小。
5) 支持异构数据源连接同步。可以用支持ODBC的异构数据源作为主数据库和嵌入型设备上的数据库进行数据同步。
6)具有主动同步的功能。允许用户对系统提供的同步事件自定义过程实现,提供了最大灵活度的同步过程。
支持多种连接协议
移动数据库应支持多种通信连接协议。可以通过串行通信、TCP/IP、红外传输、蓝牙等多种连接方式实现与嵌入型设备和数据库服务器的连接。
完备的数据库管理功能
移动数据库应具有自动恢复功能,基本无需人工干预进行移动数据库管理并能够提供数据的备份和恢复,保证用户数据的安全可靠。
支持多种嵌入型操作系统
移动数据库应能支持Windows CE、Palm OS等多种目前流行的嵌入型操作系统,这样才能使它不受移动终端的限制。
另外,一种理想的状态是用户只用一台移动终端(如手机)就能对与他相关的所有移动数据库进行数据操作和管理,这就要求前端系统具有通用性,而且要求移动数据库的接口有统一、规范的标准。前端管理系统在进行数据处理时自动生成统一的事务处理命令,提交当前所连接的数据服务器执行。这样就有效增强了移动数据库的通用性,扩大了它的应用范围。
总之,在移动数据库中还需要考虑诸多传统计算环境下不需要考虑的问题,如对断接操作的支持、对跨区长事务的支持、对位置相关查询的支持、对查询优化的特殊考虑以及对提高有限资源的利用率和对系统效率的考虑等等。为了有效地解决上述问题,诸如复制与缓存技术、移动事务处理、数据广播技术、移动查询处理与查询优化、位置相关的数据处理及查询技术、移动信息发布技术、移动Agent等技术仍在不断的发展和完善,他们会进一步促进移动数据库技术的发展。
小结
对于移动和嵌入式数据库市场来说,包括IBM DB2 、微软SQL Server、Oracle以及Sybase都有相应的产品。而随着便携式计算机和智能设备中软件应用的不断增长,全球移动数据库市场的销售将急剧增长。移动数据库技术配合GPS技术,可以用于智能交通管理、大宗货物运输管理和消防现场作业等,除此以外,它还在零售业、制造业、金融业、医疗卫生等领域展现了广阔的应用前景。