抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

5.嵌入式数据库管理系统

嵌入式系统的数据库系统称为嵌入式数据库系统嵌入式实时数据库系统

嵌入式系统必须能够在没有人工干预的情况下,长时间不间断地运行,因此要求高的可靠性。同时要求数据库操作具备可预知性,并且系统的大小和性能也都必须是可预知的,以保证系统的性能。嵌入式系统需要与底层硬件打交道,因此在数据管理时,也要有底层控制的能力,如什么时候会发生磁盘操作,磁盘操作的次数,如何控制等。底层控制的能力是决定数据库管理操作的关键

嵌入式数据库管理系统一般只提供本机服务接口,为前端应用提供基本的数据支持。

​ 通常,嵌入式数据库管理系统就是在嵌入式设备上使用的数据库管理系统。由于用到嵌入式数据库管理系统的多是移动信息设备,诸如掌上电脑、PDA、车载设备等移动通信设备,位置固定的嵌入式设备很少用到,所以,嵌入式数据库也称为移动数据库或嵌入式移动数据库。其作用主要是解决移动计算环境下数据的管理问题,移动数据库是移动计算环境中的分布式数据库

5.1使用环境的特点

(1)设备随时移动性,嵌入式数据库主要用于移动信息设备上,设备的位置经常随使用者一起移动。

(2)网络频繁断接,移动设备或移动终端在使用的过程中,位置经常发生变化,同时也受到使用方式、电源、无线通信及网络条件等因素的影响。所以,一般并不持续保持网络连接,而是经常主动或被动地间歇性断接和连接。

(3)网络条件多样化,由于移动信息设备位置的经常变化,所以移动信息设备同数据服务器在不同的时间可能通过不同的网络系统连接。这些网络在网络带宽、通信代价、网络延迟、服务质量等方面可能有所差异。

(4)通信能力不对称,由于受到移动设备的资源限制,移动设备与服务器之间的网络通信能力是非对称的。移动设备的发送能力都非常有限,使得数据服务器到移动设备的下行通信带宽和移动设备到数据服务器之间的上行带宽相差很大。

5.2系统组成与关键技术

一个完整的嵌入式数据库管理系统由若干子系统组成,包括主数据库管理系统(嵌入式数据库管理系统)、同步服务器、嵌入式数据库管理系统、连接网络

(1)嵌入式数据库管理系统。嵌入式数据库管理系统是一个功能独立的单用户数据库管理系统。它可以独立于同步服务器和主数据库管理系统运行,对嵌入式系统中的数据进行管理,也可以通过同步服务器连接到主服务器上,对主数据库中的数据进行操作,还可以通过多种方式进行数据同步。

(2)同步服务器。同步服务器是嵌入式数据库和主数据库之间的连接枢纽,保证嵌入式数据库和主数据库中数据的一致性。

(3)数据服务器。数据服务器的主数据库及数据库管理系统可以采用 Oracle 或 Sybase等大型通用数据库系统。

(4)连接网络。主数据库服务器和同步服务器之间一般通过高带宽、低延迟的固定网络进行连接。移动设备和同步服务器之间的连接根据设备的具体情况可以是无线局域网、红外连接、通用串行线或公众网等。

  1. 嵌入式移动数据库在应用中的关键

    嵌入式移动数据库在实际应用中必须解决好数据的一致性(复制性)、高效的事务处理和数据的安全性等问题。

    (1)数据的一致性。嵌入式移动数据库的一个显著特点是,移动数据终端之间及与同步服务器之间的连接是一种弱连接,即低带宽、长延迟、不稳定和经常性短接。为了支持用户在弱环境下对数据库的操作,现在普遍采用乐观复制方法(Optimistic Replication 或 Lazy Replication)允许用户对本地缓存上的数据副本进行操作。待网络重新连接后再与数据库服务器或其他移动数据终端交换数据修改信息,并通过冲突检测和协调来恢复数据的一致性。

    (2)高效的事务处理。移动事务处理要在移动环境中频繁的、可预见的断接情况下进行。为了保证活动事务的顺利完成,必须设计和实现新的事务管理策略和算法。

    • 根据网络连接情况来确定事务处理的优先级,网络连接速度高的事务请求优先处理;

    • 根据操作时间来确定事务是否迁移,即长时间的事务操作将全部迁移到服务器上执行,无须保证网络的一直畅通;

    • 根据数据量的大小来确定事务是上载执行还是下载数据副本执行后上载;

    • 完善的日志记录策略;

    • 事务处理过程中,网络断接处理时采用服务器发现机制还是采用客户端声明机制;

    • 事务移动(如:位置相关查询)过程中的用户位置属性的实时更新。

    (3)数据的安全性。许多应用领域的嵌入式设备是系统中数据管理或处理的关键设备,因此嵌入式设备上的数据库系统对存取权限的控制较严格。同时,许多嵌入式设备具有较高的移动性、便携性和非固定的工作环境,也带来潜在的不安全因素。此外,某些数据的个人隐私性又很高,因此在防止碰撞、磁场干扰、遗失、盗窃等方面对个人数据的安全性需要提供充分的保证。

    保证数据安全的主要措施是:

    • 对移动终端进行认证,防止非法终端的欺骗性接入;
    • 对无线通信进行加密,防止数据信息泄漏;
    • 对下载的数据副本加密存储,以防移动终端物理丢失后的数据泄密
  2. 移动数据库管理系统的特性

    ​ 移动 DBMS 的计算环境是传统分布式 DBMS 的扩展,它可以看做客户端与固定服务器结点动态连接的分布式系统。因此移动计算环境中的数据库管理系统是一种动态分布式数据库管理系统。由于嵌入式移动数据库管理系统在移动计算的环境下应用在嵌入式操作系统之上,所以它有自己的特点和功能需求:

    (1)微核结构,便于实现嵌入式功能。考虑到嵌入式设备的资源有限,嵌入式移动 DBMS 应采用微型化技术实现,在满足应用的前提下紧缩其系统结构以满足嵌入式应用的需求。

    (2)对标准 SQL 的支持。嵌入式移动 DBMS 应能提供对标准 SQL 的支持。支持SQL92 标准的子集,支持数据查询(连接查询、子查询、排序、分组等)、插入、更新、删除多种标准的 SQL 语句,充分满足嵌入式应用开发的需求。

    (3)事务管理功能。嵌入式移动 DBMS 应具有事务处理功能,自动维护事务的完整性、原子性等特性;支持实体完整性和引用完整性。

    (4)完善的数据同步机制。数据同步是嵌入式数据库最重要的特点。通过数据复制,可以将嵌入式数据库或主数据库的变化情况应用到对方,保证数据的一致性。

    嵌入式移动数据库管理系统的数据同步机制应具有以下几个特点:

    • 提供多种数据同步方式,具有上载同步、下载同步和完全同步 3 种同步方式;
    • 具有完善的冲突检测机制和灵活的冲突解决方案,具有冲突日志记录功能;
    • 支持快速同步,系统同步时,只传递变化的数据,节省了大量的同步时间;
    • 支持表的水平分割和垂直分割复制,最大限度地降低了嵌入式数据库的大小;
    • 支持异构数据源连接同步,可以用支持 ODBC 的异构数据源作为主数据库和嵌入式设备上的数据库进行数据同步;
    • 具有主动同步的功能,允许用户对系统提供的同步事件自定义过程实现,提供了最大灵活度的同步过程

    (5)支持多种连接协议。嵌入式移动 DBMS 应支持多种通信连接协议。可以通过串行通信、TCP/IP、红外传输、蓝牙等多种连接方式实现与嵌入式设备和数据库服务器的连接。

    (6)完备的嵌入式数据库管理功能。嵌入式移动 DBMS 应具有自动恢复功能,基本无须人工干预进行嵌入式数据库管理并能够提供数据的备份和恢复,保证用户数据的安全可靠。

    (7)平台无关性与支持多种嵌入式操作系统。嵌入式移动 DBMS 应能支持 Windows CE、Palm OS 等多种目前流行的嵌入式操作系统,这样才能使嵌入式移动数据库管理系统不受移动终端的限制。

    (8)零管理特性。嵌入式数据库具有自动恢复功能,不需要人工干预就可以进行嵌入式数据库管理,并提供数据的备份与同步。

另外,一种理想的状态是用户只用一台移动终端(如手机)就能对与它相关的所有移动数据库进行数据操作和管理。这就要求前端系统具有通用性,而且要求移动数据库的接口有统一、规范的标准。前端管理系统在进行数据处理时自动生成统一的事务处理命令,提交当前所连接的数据服务器执行。这样就有效地增强了嵌入式移动数据库管理系统的通用性,扩大了嵌入式移动数据库的应用前景。

总之,在嵌入式移动数据库管理系统中还需要考虑诸多传统计算环境下不需要考虑的问题,如对断接操作的支持、对跨区长事务的支持、对位置相关查询的支持、对查询优化的特殊考虑及对提高有限资源的利用率和对系统效率的考虑等。为了有效地解决上述问题,诸如复制与缓存技术、移动事务处理、数据广播技术、移动查询处理与查询优化、位置相关的数据处理及查询技术、移动信息发布技术、移动 Agent 等技术仍在不断地发展和完善,会进一步促进嵌入式移动数据库管理系统的发展。

6.实时系统与嵌入式操作系统

PCI(Peripheral ComponentInt Interconnect)总线标准是一种局部并行总线标准,常用来表示个人计算机中使用最为广泛的接口,几乎所有的主板产品行都带有这种插槽。

GUI(Graphical User Interface)常用来表示采用图形方式显示的计算机操作用户界面。

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,开发人员无须访问源码(或理解内部工作机制的细节)。

编程DSP芯片

编程DSP芯片是一种具有特殊结构的微处理器,为了达到快速进行数字信号处理的目的,DSP芯片一般都采用特殊的软件硬件结构:

(1)哈佛结构。

DSP采用了哈佛结构,将存储器空间划分成两个,分别存储程序和数据。它们有两组总线连接到处理器核,允许同时对它们进行访问,每个存储器独立编址,独立访问。这种安排将处理器的数据吞吐率加倍,更重要的是同时为处理器核提供数据与指令。在这种布局下,DSP得以实现单周期的MAC指令。

在哈佛结构中,由于程序和数据存储器在两个分开的空间中,因此取指和执行能完全重叠运行。

(2)流水线。

与哈佛结构相关,DSP芯片广泛采用2-6级流水线以减少指令执行时间,从而增强了处理器的处理能力。这可使指令执行能完全重叠,每个指令周期内,不同的指令都处于激活状态。

(3)独立地硬件乘法器。

在实现多媒体功能及数据信号处理的系统中,算法的实现和数字滤波都是计算密集型的应用。在这些场合,乘法运算是数字处理的重要组成部分,是各种算法实现的基本元素之一。乘法的执行速度越快,DSP处理器的性能越高。相比与一般的处理器需要30-40个指令周期,DSP芯片的特征就是有一个专用的硬件乘法器,乘法可以在一个周期内完成。

(4)特殊的DSP指令。

DSP的另一特征是采用特殊的指令,专为数字信号处理中的一些常用算法优化。这些特殊指令为一个典型的数字处理提供加速,可以大幅提高处理器的执行效率。使一些高速系统的实时数据处理成为可能。

(5)独立地DMA总线和控制器。

有一组或多组独立的DMA总线,与CPU的程序、数据总线并行工作。在不影响CPU工作的条件下,DMA的速度已经达到800MB/S以上。在这需要大数据量进行交换的场合可以减少CPU的开销,提高数据的吞吐率。提高系统的并行执行能力。

(6)多处理器接口。

使多个处理器可以很方便的并行或串行工作以提高处理速度。

(7)JTAP(Joint Test Action Group)标准测试接口(IEEE 1149标准接口)。

便于对DSP作片上的线仿真和多DSP条件下的调试。

(8)快速地指令周期。

哈佛结构,流水线操作,专用的硬件乘法器,特殊的DSP指令加上集成电路的优化设计,可是DSP芯片的指令周期在10ns以下。快速地指令周期可以使DSP芯片能够实时实现许多DSP应用。

评论