ITPUB??ì3
ITPUB论坛 » 内存数据库 » 为什么MMDB快?

标题: 为什么MMDB快?
离线 tom_111
++天道酬勤++


精华贴数 1
个人空间 0
技术积分 1861 (857)
社区积分 41 (5272)
注册日期 2007-8-24
论坛徽章:5
现任管理团队成员授权会员2008北京奥运纪念徽章:帆船2008年新春纪念徽章生肖徽章2007版:鼠 
      

发表于 2007-11-1 17:05 
为什么MMDB快?

如果磁盘数据库的内存缓冲区足够大,将整个数据库都放在缓冲区中,那么磁盘数据库的性能可以和MMDBMS一样高吗?磁盘数据库的UPDATE操作需要和磁盘同步数据,但是SELECT操作可以得到差不多的效率。但是由于磁盘数据库查询处理算法的复杂性,主要是为了优化磁盘访问,磁盘系统还不能得到我们希望的高性能。主存数据库系统高性能的秘密在于它的数据库管理技术和数据库系统的架构。

(1) 数据访问的成本

磁盘的价格低于存储器的价格,存储器的价格低于CPU CACHE的价格,换句话说,速度越快,价格越高。另一方面,在处理速度方面,磁盘的访问时间位毫秒级,而内存的方位时间为数十纳秒的数量级。要想得到高性能仅仅将数据库存储在主存中是不够的,还需要高效内存结构技术,高速缓存数据管理技术和基于主存的查询优化技术。

(2) 主存和磁盘的地址映射

假定磁盘DBMS管理的所有数据主要的存在于磁盘中,记录的访问是通过RID(record identifier)实现的。因此要访问一个记录,需要地址映射将RID转换为内存的物理地址。内存物理地址和数据库地址的地址映射时间非常短,但是在高速数据处理的情况下是不能忽略的。主存DBMS直接通过内存指针访问数据库,因为没有了地址映射的时间,可以提高数据库的性能。同样,在向磁盘中备份数据库和生成用于恢复的日志时也需要地址映射时间。根据使用的地址映射技术效率的区别和地址映射次数的多少,主存数据库的性能会有很大的不同。

(3) 内存优化的索引结构

磁盘数据库系统的典型的索引技术是B-tree索引。B-tree结构的主要目的是减少完成数据文件的索引查找所需要的磁盘I/O的数量。B-tree通过控制节点内部的索引值达到这个目的,在节点中包含尽可能多的索引条目(增加一次磁盘I/O可以访问的索引条目)。另一方面,T-tree是针对主存访问优化的索引技术。T-tree是一种一个节点中包含多个索引条目的平衡二叉树,T-tree的索引项无论是从大小还是算法上都比B-tree精简得多。T-tree的搜索算法不分搜索的值在当前的节点还是在内存中的其他地方,每访问到一个新的索引节点,索引的范围减少一半。

(4) 查询优化

磁盘数据库系统的查询优化算法基本上也是为了实现减少磁盘I/O。DRDBMS系统优化的方针假定数据主要是存放在磁盘上的。磁盘数据库中的数据可能在磁盘上,也可能在内存缓冲中,但是磁盘I/O的成本远远大于内存访问,所以磁盘数据库不得不假定最坏的情况,所有的数据都在磁盘中。另一方面,在主存数据库可以确定所有的数据都在主存中,可以在这个简单的假设(数据都在主存中)下优化器查询算法。主存数据库的查询优化不需要考虑磁盘的问题所以更简单,更精确。主存数据库系统可以实现比磁盘数据库更多的优化算法。

(5) 日志和恢复

由于主存是易失性的存储介质,所以需要进行数据库的备份。MMDBMS在磁盘上的备份数据库可以弥补主存的易失性。因而,主存数据库和备份数据库之间需要同步以保持数据的耐用性,这是数据库的基本标准,另外精确的日志和恢复能力也是事务处理中ACID标准的基本要求。现在,商业主存数据库系统已经应用于各种技术领域,保证了数据的耐用性。但是,按照怎样实现优化的同步,日志,恢复能力和数据耐用的程度不同,系统的性能有很大的不同。


__________________
=========DBA格言================
从理论中来,到实践中去,再回到理论中。
不断的重复,不断的循环!!!
做人做事一定要厚道!!!
做DBA更应该厚道!!!
江湖越走越老,胆子越走越小!!!
***【技术讲究实践和理论】【玉雕讲究打磨和上色】***
***【做人讲究人品和魅力】【做事讲究方法和技巧】***
===============================
Oracle技术交流联盟:(MSN群)mgroup10396@hotmail.com
ALTIBASE技术交流联盟:(MSN群)group199500@xiaoi.com
ITPUB内存数据库版块:http://www.itpub.net/forum162.html
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问