内存数据库技术研究 .pdfVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

内存数据库技术研究

摘要:内存数据库的体系结构、存储和索引结构、并发控制、故障

恢复机制等,明显不同于磁盘数据库,很多磁盘数据库的设计思想和

方法,很难适用于内存数据库。提出了新的存储结构,改进了传统的

事务模型及恢复机制,提高了内存数据库运行速度和实时性。

关键词:内存数据库;存储;索引;恢复

1内存数据库概述

1.1内存数据库的概念

目前,被业界普遍认可的定义如下:设有数据库系统DBS,DB

为DBS中的数据库,DBM(t)为时刻t数据库在内存的数据集,

DBM(t)DB。TS为所有可能的事务的集合,AT(t)为在时刻t处于

活动状态的事务集,AT(t)TS。D-i(T)为事务T在时刻t所操作的数

据集,D-i(T)DB。若在任一时刻t,均有:T∈AT(t),D-i(T)

DBM(t)成立,则称DBS为一个内存数据库系统,简写为MMDBS,

DB为一个内存数据库,简记为MMDB。

1.2内存数据库的特点

内存数据库与传统关系型数据库主要区别在于:内存数据库常

驻内存,体系结构设计的优化目标是提高内存和CPU利用率,由于

事务处理无需进行磁盘访问,使用MMDB的应用系统性能得到极大

提高。内存数据库与磁盘数据库的不同,如表1所示:

2内存数据库技术研究

2.1内存数据库的存储结构

内存数据库在存储关系时,一般采取分级结构,元数据与数据

应分区组织,以提高安全性。为了适应内存数据库的存储需要,我们

改进传统数据库的存储方式,同时参考其它的常用数据库,提出了新

的存储模型。首先,存储结构分两层:段和页。段是可变长的,一个

段由多个固定长的页组成,每个段存放一个关系,但并不要求构成段

的页在空间上连续。页是内存数据库的基本内存分配回收单元,其长

度固定,每页长度为8KB。页的结构由两部分组成,控制区存放记录

控制数组,信息区存放页控制信息和记录(即元组)本身。整个数据库

维护一个段表,段表中的每一项是一个段控制块。段控制块中包含一

个页表、段锁和索引链表的头指针。图1显示了新提出的内存数据组

织结构图。

从图1中可以看到:一条记录本身放在页的信息区,对记录的

访问是通过放在控制区的记录控制数组进行的。当一个事务要访问记

录时,先依据关键字查索引,找到该记录的RID。一个RID是一个

由段号、分区号、和记录控

制数组在页中的偏移量组成的三元组,用RID可以很快找到记

录插槽,从而最终定位一条记录。

2.2索引的结构

磁盘数据库采用的索引结构主要是B/B+树,其设计目标是减少

访问磁盘数据的I/O次数。而在MMDB中采用了一种新的索引结构

T树,设计目标是减少内存开销和CPU指令数。T树是由AVL树和

B树发展而来,它是一种一个节点包含多个元素的二叉树。

由于是二叉树,T树保持了AVL树二分查找的高效率,同时一

个T节点包含多个元素,像B树一样,每个节点的充满程度保持在

半满和全满之间,这样索引一般不再需要溢出块,由插入和删除所引

起的数据移动通常只需在一个节点内进行,减少了为保持树的平衡所

必须进行的旋转操作,因此,T树又保持了B树优异的更新和存储特

性。由于索引和数据全在内存中,在一个T树节点中不需要像B树

那样存放N个索引键值-指针对,只需存放指向内存中相应记录对应

字段的指针,这样索引中变长字段的存储不再是问题,另外,由于指

针一般比它指向的字段要小,大量的空间也被节省了。

2.3并发控制

内存数据库长驻内存中,较之传统数据库,在并发控制的设计

上有其新的特点。首先,内存访问速度比磁盘访问速度快,在内存数

据库中,一个事务的执行时间比传统性事务要短的多,事务持有锁的

时间很短,对锁的竞争比较小。其次,数据和元数据均常驻内存(磁盘

数据库中,锁在内存,数据通

文档评论(0)

130****6713 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档