基于协同缓存的分布式数据库更新机制研究
计 算 机 工 程 第 33 卷 第7期
Vol.33 No.7 Computer Engineering · · 软件技术与数据库
文章编号:1000—3428(2007)07—0047—03
2007年4月
April2007
文献标识码:A 中图分类号:TP311
基于协同缓存的分布式数据库更新机制研究
符青云,刘心松
(电子科技大学8010研究室,成都 610054)
摘 要:减小数据库事务中的写操作开销对于分布式数据库系统的性能而言很关键。该文提出了一种基于协同缓存技术的分布式数据库更新机制,通过在分布式数据库服务器节点物理内存之上构建全局协同缓冲池,并利用其缓存写入记录,减小了数据库事务中的磁盘访问开销,研究了基于协同缓存的分布式数据库更新机制与其在该机制下事务性能改进。 关键词:分布式数据库事务;基于协同缓存的分布式数据库更新机制;协同缓冲池
Distributed Database Update Mechanism Based on Cooperate Cache
FU Qingyun, LIU Xinsong
(8010 Group, University of Electronic Science and Technology of China, Chengdu 610054)
【Abstract】Cost reduction of write operation in database transaction is important in distributed database system design. The paper presents a newupdate mechanism, named cooperate cache-based distributed database update mechanism (CCDDU). It reduces disk access cost in databasetransaction by means of cooperative caching pool constructed with physical memory among the servers. This paper describes cooperate cache-baseddistributed database update mechanism, focusing on how the mechanism improves transaction performance and its availability.
【Key words】Distributed database transaction; Cooperate cache-based distributed database update mechanism; Cooperate caching pool
1 概述
分布式数据库系统由于具有高吞吐量、高可用性和高可扩展性等优点,而在超大容量数据存储与处理领域得到了广泛应用。由于服务节点间的同步开销与服务器节点内的磁盘访问开销,使得分布式数据库系统的事务处理时间很长。如何减小更新事务的响应时间,从而提高事务性能是分布式数据库研究中的重要问题。
为了减少事务中写日志的开销,提出了很多改进的提交协议,比如:预提交协议(Presumed Commit Protocols, PrC),预定丢弃协议(Presumed Abort Protocols, PrA),早期准备协议(Early Perpard Protocols, EP),协同日志协议(Coordinator Log Protocol, CL),显式提交协议(Implicit Yes-Vote Protocol, IYV)。
上面的协议关注于减少日志的写入次数,但是对于如何提高日志的写入速度没有相应的研究。
邱等人提出了一种基于全局协同缓冲池的数据库日志更新机制[1],由于不必在事务提交前后立即将日志写入磁盘,而仅仅将其缓存在协同缓冲池中,仅当协同缓冲池满或者节点轻载时,才将缓冲池中的数据写入磁盘中,改进了提交协议的性能。
但是由于数据库更新事务中记录写入操作中的磁盘访问次数并没有减小,因此在数据库更新很频繁时,连续不断的磁盘访问会使得磁盘过载,并使得磁盘最终成为系统瓶颈。
本文提出了一种基于协同缓存的分布式数据库更新机制,其目的是减小数据库事务中的磁盘操作。通过服务节点间协同缓存更新的记录,不必在事务提交时马上更新数据库文件,只有协同缓存已满,或者节点负载很轻时,才将Cache中的内容刷新到磁盘上。该机制可以显著改进分布式数据库
系统的性能。
2 基于协同缓存的分布式数据库更新机制
2.1 相关技术
一种减少数据库事务响应时间的方法是主存数据库,由于主存数据库在内存中维护数据,因此在数据库更新时不存在磁盘操作,只有数据备份与日志存储涉及磁盘读写,事务性能得到了很大的提高。但是主存数据库技术存在两个严重问题:
(1)通常的数据库文件很大,难以完全放入物理内存; (2)主存数据库存在丢失数据的危险,如果物理内存失效,则存储在数据库中的所有数据将会丢失。
尽管主存数据库存在上面的缺点,但其利用物理内存获取高性能的方式值得借鉴。随着网络技术的发展,高速LAN环境的传输速率已经超过了1 000Mbps,LAN环境下典型的通信延迟不超过15µs[2]。但是磁盘的性能改进较小,典型的寻道延迟在8ms左右,物理内存的访问速率远远高于高速网络与磁盘系统,与网络传输延迟和磁盘寻道和读写延迟相比,内存的访问延迟可以忽略。
基于上面的认识,邱等人提出了基于协同内存缓存机制的数据库日志写入策略[1],有效地改进了数据库系统的性能。本文使用与上面类似的思想构建了一个巨大的分布式协同缓冲池,用于写入记录的缓存,磁盘访问操作的次数可以大大减小,从而提高了数据库事务的性能。
这里,对CCDDU与其它方法在记录缓存方面的不同给出
作者简介:符青云(1975-),男,博士生,主研方向:分布式并行系统;刘心松,教授、博导
收稿日期:2006-04-10 E-mail:qingyunfu@http://doc.guandang.net
—47—
简要描述[3]。
(1)在ADO,http://doc.guandang.net和DataSnap技术中,记录或者缓存于单个的客户端内存中,或者缓存于单个的应用服务器内存中,可以利用的缓存空间仅仅是单个节点分配用于数据缓存的空间;而在CCDDU中,通过协同缓存机制,得到的最大缓存空间等于服务节点可用缓存空间之和。由于上述优点,使得CCDDU机制非常具有吸引力。
(2)CCDDU机制构建于分布式数据库系统中,而其它的
方法,比如MicroSoft的ADO、
http://doc.guandang.net,Borland的DataSnap技术中的数据缓存机制构建于客户端或者应用服务器中。在不同的项目中,后者为了利用数据缓存技术,需要在客户端或者应用服务器中添加该特性,增加了开发人员的工作量,而对CCDDU机制而言,由于数据缓存技术在数据库系统中实现,对软件开发人员完全透明,没有额外的工作。 2.2 数据库更新过程
2.2.1 参与分布式数据库事务的两类主机
定义1 事务发起者R
事务发起者R指分布式数据库服务器系统中发起事务的节点。
定义2 事务参与者A
事务参与者A指分布式数据库服务器系统中按照事务发起者的请求,参与数据缓存与数据库更新的节点。
数据库事务中允许多个参与者,参与者的数目依赖于可用性要求,所要求的可用性越高,则参与者数目越多。参与者可以通过数据库系统管理员预先定义,也可以在运行时根据节点资源的可用性动态计算而确定。每个参与者不必缓存所有记录,只需缓存某些数据,以便减小RAM开销并最大化RAM的利用率。本文假定系统内的所有节点参与协同缓存,协同缓存池中没有重复记录。
2.2.2 基于协同缓存的分布式数据库更新过程
当用户触发数据库事务时,数据库服务器节点按照下列过程为用户协同提供服务:
(1)发起者R向外发送请求消息与要更新或者插入的数据记录,并为新的记录在内存中创建缓存表;
(2)参与者A接收消息与待更新的数据记录,并在其主存中为接收的记录创建缓存表;
(3)R与A决定将数据记录插入缓存表,还是用新值更新缓存表中的记录;
(4)当满足回写条件时,节点将缓存的记录更新到数据 库中。
…… 此处隐藏:5660字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [求职职场]加法运算定律的运用练习题
- [求职职场]大型石油化工工业过程节能新技术
- [求职职场]2015-2020年中国箱纸板行业分析与投资
- [求职职场]NADEX-IWC5A点焊机故障代码
- [求职职场]英语阅读 非常有用
- [求职职场]鲁卫疾控发〔2012〕2号(联合,印发山东
- [求职职场]2014年莆田公务员行测技巧:数字推理的
- [求职职场]基于最近发展区理论的高中数学课堂有效
- [求职职场]与贸易有关的知识产权协议
- [求职职场]【王风范】微演说·职场演说三
- [求职职场]新时代国珍健康大课堂
- [求职职场]群论期末考试复习题
- [求职职场]施工现场消防安全专项施工方案(范本)-
- [求职职场]初中物理光学知识点归纳完美版
- [求职职场]毕业设计总结与体会范文
- [求职职场]江南大学2018年上半年展示设计第1阶段
- [求职职场]景尚乡民兵参战支前保障方案
- [求职职场]【优质】2019年工会职工之家建设工作总
- [求职职场]数据库技术与应用—SQL Server 2008(第
- [求职职场]汽车变速箱构造与工作原理
- 首钢工业区工业遗产资源保护与再利用研
- 第4课 《大学》节选
- 2016程序文件——检验检测结果发布程序
- 2011年高考试题文言文阅读全解释__2011
- 化学是一门基础的自然科学
- 海外做市商制度的借鉴意义
- 外国建筑史复习资料(
- 七年级下思想品德期末综合测试(二)
- 思政课部2013年上学期教学工作总结
- 电大国际公法任务3 0004
- 《圆的认识》教学设计
- 中国轨道交通牵引变流器行业市场发展调
- 中泰证券#定期报告:坚守时代硬科技和
- 浅论企业财务管理与企业经营投资风险的
- 大功率半导体激光器光纤耦合技术调研报
- 中国传统家具的现状与发展探讨
- Broadcom数字电视芯片助海尔扩展高清电
- 新HSK4词汇练习 超全(五)
- 2013届高考数学单元考点复习12
- 雨霖铃精品课件




