- 相关推荐
嵌入式移动数据库研究
摘要: 嵌入式技术已在人们生活中得到广泛应用;移动计算更是给人们的生活带来了极大的方便。有移动计算技术推动发展的新的数据库技术让人耳目一新。嵌入式移动数据库技术因此产生。主要论述了嵌入式移动数据库的特点及应用,嵌入式移动数据库管理系统(EMDB)的功能需求及特点,嵌入式移动数据库的系统结构。关键字: 嵌入式 移动计算 嵌入式移动数据库 EMDB 系统结构
1 引言
随着移动计算技术的发展,移动数据库逐步走向应用,在嵌入式操作系统中加入移动数据库,也越来越显示出其重要性。
1.1 嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序编程。有时设计人员把这两种软件组合在一起。应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。
1.2 移动计算
移动计算是一种新型的技术,它使得计算机或其它信息设备,在没有与固定的物理连接设备相连的情况下,能够传输数据。移动计算的作用在于,将有用、准确、及时的信息与中央信息系统相互作用,分担中央信息系统的计算压力, 使有用、准确、及时的信息能提供给在任何时间、任何地点需要它的任何用户。移动计算环境比传统的计算环境更为复杂和灵活。 典型的移动计算环境有[1]:
(1) 智能计算设备+ 无线网络。通过无线网络,智能计算设备可以随时进入MCE 主网络;
(2) 智能计算设备+ 调制解调器+ 电话网络。在不同地点, 将调制解调器和附近的电话相连接, 通过电话网进入MCE 主网络;
(3) 移动用户+ 传统工作站+ 传统有线网络。移动用户在不同场地使用静态计算机获得MCE 的服务。
1.3 嵌入式移动数据库
数据库技术一直在随着计算的发展而不断进步。凡是有数据的地方,就要用到数据库来协助管理数据。移动计算也是对数据的处理,离开对数据的管理、处理,计算机就毫无意义。移动计算同时又强调其移动性,传统的PC机要做到移动,同时在苛刻的环境下作到良好的运作也是不可能的。此时,嵌入式很好的满足了移动计算对移动客户端计算的要求。三者从这一点上结合就产生了当今数据库的一个新的发展空间:嵌入式数据库技术。移动数据库是指支持移动计算环境的分布式数据库。由于移动数据库系统通常应用在诸如掌上电脑、PDA、车载设备、移动电话等嵌入式设备中,因此,它又被称为嵌入式移动数据库系统。
2 嵌入式移动数据库的特点及其应用
2.1 嵌入式移动数据库特点
嵌入式移动数据库在实际应用中必须解决好数据的一致性(复制性)、高效的事务处理、数据的安全性等问题。
(1)数据的一致性
移动数据库的一个显著特点是,移动终端之间以及与服务器之间的连接是一种弱连接。即低带宽、长延迟、不稳定和经常性的断开。为了支持用户在弱环境下对数据库的操作,现在普遍采用乐观复制方法(Optimistic replication 或 Lazy replication)允许用户对本地缓存上的数据副本进行操作。待网络重新连接后再与数据库服务器或其它终端交换数据修改信息,并通过冲突检测和协调来恢复数据的一致性。
(2)高效的事务处理
移动事务处理要解决在移动环境中频繁的、可预见的、拆连情况下的事务处理。为了保证活动事务的顺利完成,必须设计和实现新的事务管理策略和算法,方法如下:
根据网络连接情况来确定事务处理的优先级,网络连接速度高的事务请求优先处理。
根据操作时间来确定事务是否迁移,即长时间的事务操作将全部迁移到服务器上执行,无需保证网络的一直畅通。
根据数据量的大小来确定事务是上载执行还是下载数据副本执行后上载。
事务处理过程中,网络断接处理时采用服务器发现机制还是采用客户端声明机制。
事务移动(如:位置相关查询)过程中的用户位置属性的实时更新。
完善的日志记录策略。
(3)数据的安全性
许多应用领域的嵌入式设备是系统中数据管理或处理的关键设备,因此嵌入式设备上的数据库系统对存取权限的控制比较严格。同时,许多嵌入式设备具有较高的移动性、便携性和非固定的工作环境,也带来潜在的不安全因素。同时某些数据的个人隐私性又很高,因此在防止碰撞、磁场干扰、遗失、盗窃等对个人数据安全的威胁上需要提供充分的安全性保证。保证数据安全的主要措施如下:
对移动终端进行认证,防止非法终端的欺骗性接入。
对无线通信进行加密,防止数据信息泄漏。
对下载的数据副本加密存储,以防移动终端物理丢失后的数据泄密[2]。
2.2 嵌入式移动数据库应用
目前,嵌入式移动数据库有两种应用,可划分为水平应用和垂直应用。所谓水平应用,是指应用方案能够用于多种不同行业,只需要极少的定制工作;而垂直应用则针对特定行业的应用,数据处理具有独特性。与水平应用相比,垂直型应用具有明显的行业特殊性,不同领域的应用之间差别较大,结果表示和服务器数据库的管理也有很大不同。主要涉及保险、银行业、航班信息、政府部门等具体的行业领域。如图所示[3]:
图 1 嵌入式移动数据库的应用分类
3 嵌入式移动数据库管理系统(EMDBMS)的特性
3.1 嵌入式移动数据库管理系统的功能需求
移动计算环境中的数据库管理系统,是一种动态分布式数据库管理系统。由于嵌入式移动数据库管理系统运行在移动计算的环境之下,应用于嵌入式操作系统之上,所以它有自己的功能需求:
(1)微小内核结构
考虑到嵌入式设备的资源有限,嵌入式移动DBMS应采用微型化技术实现,可在满足应用的前提下,紧缩其系统结构以满足嵌入式应用的需求。
(2)对标准SQL的支持
嵌入式移动DBMS应能提供对标准SQL的支持。支持SQL92 标准的子集,支持数据查询(连接查询、子查询、排序、分组等)、插入、更新、删除多种标准的SQL 语句,以充分满足嵌入式应用开发的需求。
(3)事务管理功能
嵌入式移动DBMS应具有事务处理能力,可自动维护事务的完整性、原子性等特性;支持实体完整性和引用完整性。
(4)完善的数据同步机制
数据同步是嵌入式数据库最重要的特点。通过数据复制,可以将嵌入式数据库或主数据库的变化情况应用到对方,以保证数据的一致性。
(5)支持多种连接协议。
嵌入式移动DBMS应支持多种通信连接协议。可以通过串行通信、T C P /IP、红外传输、蓝牙等多种连接方式,实现与嵌入式设备和数据库服务器的连接。