论文部分内容阅读
分布式数据库系统的事务处理中,为了保证事务提交的原子性,在实际应用中广泛采用两阶段提交协议。两阶段提交协议把本地原子性提交行为扩展到分布式事务,保证了分布式事务提交的原子性,从而较好的保证了分布式事务的一致性和数据的一致性,在不丢失日志记录的前提下能够较为有效的进行故障恢复,提高了分布式数据库系统的可靠性。这种技术简单、实用、较为可靠,已成为事实上的工业标准。然而,这个协议存在固有缺陷:当出现故障失效情况时,事务可能无法正确地提交或回滚,易于陷入阻塞状态,严重影响系统性能和系统资源的利用效率。本文通过对分布式事务的特点、分布式事务管理所面临的问题和分布式事务管理的目标进行分析研究的基础上,对为保证分布式事务提交的原子性所采用的两阶段提交协议及其主要改进版本的基本思想和内容进行了研究,并在此基础上深入分析了两阶段提交协议及其主要改进版本的优点及其存在的缺陷。本文针对两阶段提交协议所存在的固有缺陷,对两阶段提交协议所采用的通信结构进行了研究改进;对两阶段提交协议的算法进行了研究改进并且提出了一种完整的改进算法,有效的降低了阻塞现象发生的几率从而提高了两阶段提交协议的性能;在此基础上,为改进的两阶段提交协议设计了较为完善的终结协议和恢复协议,使得改进协议在分布式数据库系统发生故障失效的情况下仍然能够最大限度的正常运行,提升了协议的可靠性和可用性。本文最后比较并分析了两阶段提交协议和改进后的两阶段提交协议故障处理方式的异同点及其对协议性能的影响;根据影响两阶段提交协议执行效率的各个因素对改进两阶段提交协议的性能提升进行了研究分析;并且使用进程代数的方法对改进两阶段提交协议的正确性进行了证明。综上所述,本文对两阶段提交协议从通信结构、协议算法、终结协议和恢复协议设计等方面提出了完整的改进方案,并且证明了改进协议的正确性。改进协议能够有效提升协议性能及其可靠性和可用性,具有学术理论意义和实用价值。