论文部分内容阅读
本文研究面向Cluster环境的并行内存数据库的快速事务提交与高效恢复方法,主要包括三个方面的内容:快速事务提交和日志处理、检查点操作、并行数据库的恢复。本文改进单阶段提交协议,通过日志信息的并行写入硬盘,充分利用IO带宽,加快事务的提交,避免更新密集型应用中日志的堆积。传统两阶段锁协议导致读写事务的加锁冲突,降低系统的吞吐量。本文把加锁协议和临时版本管理结合起来,通过版本管理实现无堵塞的读事务,避免了读写事务之间的互相等待。基于多版本管理实现一致检查点,必须付出版本管理的空间开销代价。本文采用元组级别的版本管理和版本共享技术,版本管理的开销大大降低。在内存越来越大的情况下,这些代价是合理的,因为系统事务处理能力和检查点操作效率得到了较大提高。本文提出基于数据分区的并行恢复算法,实现了恢复过程的系统可用性。恢复过程中,各个站点的恢复工作是相互独立的,同时利用差分日志的特点,实现了数据分区之间,日志之间、数据和日志之间的并行处理,加快了恢复过程,减少了站点恢复的总时间。本文使用J-SIM软件包建模进行仿真实验,验证了所提方案的可行性和效率。结果显示:(1)由于使用快速提交技术和并行日志写入,事务响应时间从50ms降低到21ms;(2)使用并行恢复算法,站点失败的恢复时间从65 s降低到28秒;(3)查询事务的吞吐量比模糊检查点高67%左右,而更新事务的吞吐量比模糊检查点高7.8%左右; (4)在80%更新事务的密集场景中,版本管理的空间开销在11%左右。(5)实验测试的恢复过程中的4个(1/4)时间段,系统平均吞吐量分别为90.2Ktps、98.3Ktps、104.5Ktps、107.7Ktps,事务的平均响应时间分别为273ms、32.3ms、9.2ms、5.32ms。该论文有图49幅,表5个,参考文献121篇。