嵌入式内存数据库引擎的研究与设计

嵌入式内存数据库引擎的研究与设计

ID:9738410

大小:60.50 KB

页数:10页

时间:2018-05-07

嵌入式内存数据库引擎的研究与设计_第1页
嵌入式内存数据库引擎的研究与设计_第2页
嵌入式内存数据库引擎的研究与设计_第3页
嵌入式内存数据库引擎的研究与设计_第4页
嵌入式内存数据库引擎的研究与设计_第5页
资源描述:

《嵌入式内存数据库引擎的研究与设计》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、嵌入式内存数据库引擎的研究与设计>>教育资源库  1嵌入式内存数据库技术发展的现状  数据库理论与技术的发展极其迅速,其应用日益广泛,在当今的信息社会中,它几乎无所不在。以关系型为代表的三大经典(层次、网状、关系)型数据库在传统的(商务和管理的事务型)应用领域获得了极大成功,然而它们在现代的(非传统)工程和时间关键型应用面前却显得软弱无力,面临着新的严峻的挑战,由此而导致了嵌入式实时数据库的产生和发展。在实时应用中,事务在运行前的操作逻辑(操作类型、顺序等)、数据集及其结构、行为以及时间的相关性等都是可预分析的。然而,对磁盘数据库而言,数据的I/O是造成事务

2、执行时间不确定、预报不准确的关键因素。为此,要求以大内存作为实时数据库的主要存储介质,使一个事务在活动期间没有I/O,以达到较准确的预报,从而满足实时事务的定时限制。但这要解决两个问题,就是适当的数据安置和适时的内外存交换。随着内存技术的高速发展,内存数据库技术日益成熟,在非实时系统中也得到了广泛的应用。   内存数据库(MMDB)把数据库的主拷贝(即工作版本)常驻在内存,使系统性能得到了极大的提高。但是,由于所有操作直接作用于内存中的数据库主拷贝上,数据库极易受到操作系统和应用软件错误造成的破坏,而且,数据库恢复所包含的I/O操作(如做日志、备份等)在事务

3、运行不需要I/O操作的内存数据库系统中也显得极为突出。因此,内存数据库的恢复机制对系统性能有重要的影响作用,内存数据库的恢复较之传统的磁盘数据库的恢复要复杂得多,也关键得多。数据恢复是内存数据库可靠、实用的关键,恢复技术的研究已成为MMDB研究领域最热门的课题。  2内存数据库的定义  内存数据库的定义不应涉及内存的大小、存取数据所需I/O的多少、数据何时进入及怎样才能留驻内存等这些具体的实现技术,而只包含数据库常驻内存(而不是磁盘)、事务(不是系统)的数据存取只涉及内存的意思。其本质特征是其主拷贝或工作版本常驻内存,即活动事务只与实时内存数据库的内存拷贝打

4、交道。显然,它要求较大的内存量,但并不要求任何时刻整个数据库都能存放在内存,即内存数据库系统还是要处理I/O。传统的磁盘数据库即使缓冲区足够大,以致可以容纳所有数据也不能算是一个MMDB。因为它是针对磁盘特性、在数据库常驻磁盘的假定下设计的。例如,索引结构还是针对磁盘存取的,数据的存取仍必须经过缓冲区管理等。内存数据库的组织与管理要求新的适于内存特点的数据结构和算法,对于数据的组织与安置、数据库存取、内外存数据交换、查询处理及优化、并发控制及数据库恢复都需要研究新的策略与机制。  内存数据库是一个较新的研究领域,结合各方面参考,现给出如下定义:  定义:设有

5、数据库DB,DBM(t)是t时刻DB在内存中的数据集,DBM(t)真包含于DB;TS为所有事务的集合,AT(t)是t时刻的活动事务集,AT(t)真包含于TS;Dt(T)为T在t时刻的操作数据集,Dt(T)真包含于DB;若在任一时刻t,均有:  对任一事务有T∈AT(t),Dt(T)真包含于DBM(t)成立,则称DB为一个内存数据库,简记为MMDB。  按此定义,MMDB的工作版本(当然也可以是整个数据库)常驻内存,任何一个事务在执行过程中没有内外存间的数据I/O。显然,它需要一定的内存容量,但并不要求整个数据库都必须常驻在内存。  3内存数据库的特

6、点  3.1  内存数据库数据存储的组织和管理一个MMDB的逻辑整体主要由两个部分构成,即内存版本与外存版本。主存储器是易失内存,它存放MMDB的工作版本。它在逻辑上被划分为若干分区,一  个分区用来存放一个关系的数据。每个分区又物理地由若干相互链接的块组成。一块是一个固定长度的连续区域,它是内外存I/O的单位,也是内存分配、回收以及对MMDB进行恢复的单位。索引与数据记录分离存放。   NV-RAM(NOVolatileRAM)兼有内存读写速度快和在后备电池维护的情况下非易失的特点,但价格昂贵,不便插拔,广泛用于嵌入式系统,并可与Flash-RAM配合使用

7、,充当Flash-RAM写缓冲区。NV-RAM是主存储器的拓延,目前可用UPS、固态磁盘或磁盘Cache等实现。主存数据与NV-RAM数据一起统称为MMDB的内存版本。  磁盘存储器用来存放未在内存的那一部分数据库数据,同时也用作数据库恢复的备份,我们称之为外存版本。为便于实现内外存间的数据交换,可将磁盘数据在逻辑上划分为与内存块同样长度的定长块,建立相同类型的索引。   3.2  事务处理   当内存数据库用于非实时系统时,除了日志和系统恢复的具体方式跟传统数据库差异比较大以外,事务处理过程与传统数据库的事务处理相似;然而,当内存数据库用于实时系统时,既实

8、时内存数据库中,事务处理由于受到了时间上的限制,传统

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。