内存数据库关键技术研究.docVIP

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

内存数据库关键技术研究   [摘要]随着计算机信息技术的飞速发展,数据存储及控制的效率得到了全面的提升,,在此背景下,内存数据库技术逐渐成为了现阶段数据库研究的热点课题之一。与传统的磁盘数据库相比,内存数据库的读写速度实现的大大的提升,同时极大地提高了数据应用的性能,因此内存数据库的数据处理速度比传统数据库的处理速度快十倍以上。基于上述原因,本文对内存数据库的基本概念进行了阐述,并对其中的关键技术进行了深入浅出的研究和总结。   [关键词]内存数据库;并发控制;恢复技术   [中图分类号]G250.74 [文献标识码]A [文章编号]1672-5158(2013)06-0050-01   1 内存数据库概论   1.1 内存数据库的概念   内存数据库指的是:一种将数据存储在内存中,并可以实现直接操作的数据库。内存数据库在计算机信息系统中有着严谨的定义:设定DBS为一个数据库系统,DB为该数据库系统中的数据库,DBM(t)代表t时刻中出现在DB中的数据集合,AT(t)代表t时期时处于活动状态的事物集合,Dt(T)则是事物集在t时刻进行操作的数据集。在上述条件满足的情况下,如任意t时刻时,满足T隶属于AT(t)且Dt(T)隶属于DBM(t),则将DBS成为一个内存数据库系统,一般用MMDBS简称;同时称DB为一个内存数据库,并简称为MMDB。   1.2 内存数据库的特点   内存数据库技术具有以下几方面特性:   第一,以较为复杂的模型代表数据框架,具有良好的数据扩展性,能够使数据得到充分利用。   第二,具有方便的用户接口,数据和程序的独立性也十分高。   第三,具有并发控制、故障恢复、完整性及安全性四个方面的数据控制性能。在数据库的支配管理下,各个程序中的数据由系统进行统一管理和集中控制。   第四,大大提升了系统的灵活性和数据的读写速率。   2 内存数据库中的关键技术   2.1 并发控制技术   并发控制是内存数据库中较为典型的关键技术之一。由于内存数据库存在于系统内存中,因此在并发控制上有着其独特的设计思路,具体体现在以下几方面:   第一,基于并发控制技术的背景下,事务锁的时间通常较短,因此由于锁造成的竞争也较短。这主要是因为内存数据库的数据访问速度通常较快,数据与数据之间的交换衔接时间也较短。   第二,很多内存数据库系统都需要采用事务并发执行的方式完成数据采集和交换,为了保证这一过程实施的安全性和可靠性,通常采用粗粒度锁作为辅助,以此降低锁的开销。对于一些较为复杂的内存数据库系统,采用传统、单一的加锁方式很难满足实际需求,则在进行内存数据设计的时候通常考虑应用多粒度锁体系,例如表锁、数据库锁或记录锁。   此外,由于内存数据库技术对系统系能的要求较高,在实际设计过程中需要充分借用内存的优势并结合内存数据库的特性,尽量减少并发控制对性能的不良影响。当然,上述设计需要建立在保证事物ACID的基础上。   2.2 故障恢复技术   由于内存数据库中,内存是数据存储的主要单元,而内存本身的不稳定性较高,导致内存数据库发生系统故障的频率也比较高。因此,构建有效的故障恢复机制对于内存数据库就显得意义非凡。目前,应用于内存数据库的主流故障恢复技术包含日志、检验点和内存数据库重装三类。   第一,日志。日志中的系统运行记录将内存数据库系统运行时的信息详尽地保存了下来,在事务恢复执行之前,由日志记录下的数据镜像便被很好地装入内存之中。换句话说,日志为内存数据库的故障恢复提供了相应的技术依据。   第二,检验点。检验点操作时,内存数据库一般能够处于静止状态,此时能够对系统数据的整体或部分进行有效记录,并以此作为故障发生后的恢复数据镜像。目前,Fuzzy checkpoint是应用于内存数据库系统中最为广泛的检验点技术,该技术能够实现任意时间点的数据检验,且不受事物或动作状态的限制,具有很好的应用效应。   第三,内存数据库重装。重装技术是一种将数据库外存版SDB恢复到内存版MDB的技术过程,主要分为完整重装和部分重装两部分。当系统出现掉电故障或初装状态时,一般应用完整重装对内存数据库系统进行故障恢复;而当内存介质发生故障或内存不能存储于数据库整体时,则应用部分重装操作实现对内存数据库系统的故障恢复,换人数据的选取是应用部分重装操作的关键环节。   2.3 索引技术   传统的磁盘数据库采用B/B+树的索引技术,此技术能够有效减少方位磁盘数据的I/O次数,然而,该项技术并适合内存数据库系统。目前,主流的内存数据库一般选用T树索引技术,这是一项根据AVL树和B树发展而来的技术。   喇索引技术融合了AVL树技术和B树技术的优点,既具有AVL树的二分查找性能,又具备B树良好的

文档评论(0)

jingpinwedang + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档