节点文献

分布式并行数据库系统DP-SQL的恢复机制

【作者】 王宇

【导师】 刘心松;

【作者基本信息】 电子科技大学 , 计算机系统结构, 2003, 硕士

【摘要】 分布式并行数据库系统(Distributed and Parallel Database System,简称DPDBS)是分布式计算、并行处理以及网络技术相结合的产物,其不但对分散数据具有较强的管理能力,同时具有良好的性能。随着数据库应用的扩展,分布式并行数据库系统已日益得到了人们的重视,并成为计算机技术最活跃的研究领域之一。 DP-SQL是由电子科技大学8010研究室自主研发的分布式并行数据库系统。它以当前最为流行的开放源码数据库Mysql为基础,不但保持了Mysql的高处理速度,而且具有分布式并行系统的高可靠性,高吞吐量、高存储容量等一系列优点。根据功能可以把该系统划分为四个组成部分:用户接口子系统、通信子系统、服务器管理子系统和执行子系统。其中,接口子系统位于客户机上,负责接收用户的输入,同时将执行的结果返回给用户;通信子系统为其他各部分提供高效可靠的消息通讯机制;服务器管理子系统负责整个系统的正常运行以及为执行子系统提供各种系统信息;分布式并行执行子系统负责具体的数据库操作。 恢复机制是保证分布式并行数据库系统能正常提供数据库服务的基础。当数据库出现故障(硬件和软件)时,恢复机制负责在故障排除后对其进行恢复,使其回到正常状态,继续提供数据库服务。另外,数据库节点在重启过程也需要进行本节点数据库的恢复,以达到和系统中其他节点上的数据库全局一致的状态。 本文在深入研究的基础上,讨论了分布式并行数据库DP-SQL的设计思想,重点研究了其恢复机制,特别是日志恢复的设计与实现。在分析了传统日志恢复机制的不足之后,本文提出了一种新的基于代理(Agent)的动态恢复协议。该协议使用了代理(Agent)来缓存在恢复期间新发起的数据库操作,并在通过日志完成部分恢复后,依靠这些缓存的操作进行进一步恢复。和传统的基于日志的恢复算法相比,该动态恢复协议在保证系统一致性的同时,能够减小恢复所带来的额外系统开销以及对个别节点的影响和过分依赖,从而使系统的整体性能和可靠性得到提高。 本文第一章回顾了分布式并行数据库的发展状况;第二章介绍了分布式并行数据库系统的特点及其传统恢复机制;第三章讨论了DP-SQL的系统结构;第四章对DP-SQL的恢复机制进行了深入探讨;第五章将详细分析DP-SQL中基于代理(Agent)的动态恢复协议,并通过性能分析证明了其优越性;第六章总结全文,并对以后的研究作出了展望。

【Abstract】 Distributed and Parallel Database System (DPDBS) is the joint of distributed computing, Parallel Process, and Network technology. It is not only powerful at distributed data management, but also has well performance in parallel processing. With the extension of database application, the DPDBS has obtained more and more recognition. It has become one of the most active and promising research areas of computer science.DP-SQL is a distributed and parallel database system developed by 8010 Research Lab. Based on the most popular open-source database system Mysql, it not only retains the high performance of Mysql itself, but also possesses most virtues of Distributed and Parallel Systems, such as high reliability, high availability, high throughput, large storage capability, etc. The whole system can be divided into four sub-systems, which are user interface sub-system, communication sub-system, server managing sub-system, and distributed and parallel executing sub-system. User interface sub-system locates on clients. It sends queries from the client to a proper server and retrieves results. The communication sub-system provides quality and reliable message passing mechanism for other modules. The server managing sub-system consists of multiple services that make the whole system run well. Finally, the distributed and parallel processing sub-system controls all the details related to execution of all kinds of commands.Recovery from node failures is a critical issue in distributed and parallel database systems. When some failures happen, the database can recover to a consistent state and continue its service with the help of recovery system. Moreover, a database node also requires a recovery process during its startup session, by which it can get consistent with other running nodes in the system.Among the various recovery techniques, log-based recoveries grow popular for their reliability and tolerable overhead. However, in conventional log-based recovery protocols, the nodes providing recovery service may still be overburdened, especially when the recovery is resource consuming. As a result, not only the system performance is compromised, but also the possibility of large-scale failure increases. In this paper, we present an agent-based dynamic recovery protocol. It divides the whole recovery process into three major steps: log-recovery, agent-recovery, andsynchronization. The key idea of this new protocol is to cache new database operations during recovery in agents. All these cached operations can then be replayed independently later. The analysis indicates that the new protocol can improve recovery speed by reducing disk I/O and minimize internode’s dependency during recovery. Therefore, system failure rate is cut down and the overall performance gets improved.The balance of this paper is organized as follows. In Chapter 1 we review the progress of research on DPDBS. Then, In Chapter 2 we discuss the features of DPDBS and the conventional recovery mechanisms. Chapter 3 presents the architecture of a quality DPDBS named DP-SQL. Some implementation details are also discussed. Chapter 4 analyzes the recovery system in DP-SQL. In Chapter 5, the Agent-based dynamic recovery protocol is presented. Its proof of correctness, implementation details, and performance analysis are also discussed. The last chapter draws the conclusion and makes expectation for the future research.

  • 【分类号】TP311.13
  • 【被引频次】2
  • 【下载频次】111
节点文献中: 

本文链接的文献网络图示:

本文的引文网络