Font Size: a A A

The Implementation Of High Availability In Scalable DBMS

Posted on:2017-04-13Degree:MasterType:Thesis
Country:ChinaCandidate:T Z PangFull Text:PDF
GTID:2308330485468989Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In recent years, with the rapid development of the Internet, traditional industries, such as finance industry, are confronted with massive data and high concurrent access. Traditional central databases of scaling-up architecture cannot support massive data and rapidly increasing of data. Therefore, people begin to utilize distributed database tech-nologies to solve those problems. However, distributed databases suffer from shortcom-ing in high-availability with strong consistency. We analyze existing distributed consensus algorithms as well as their implementation and application scope. Then we present two election algorithms for critical nodes based on scalable data management system archi-tecture. Finally, we show that these algorithms implemented in OceanBase can provide high-availability in real application environment. Through performance studies, we quan-tify the cost of our algorithms.The primary contributions are:1. We propose a kind of high-availability framework. It can deal with the single-point failure of nodes in scalable data management system, including control-nodes and transaction-nodes. This framework can achieve high-availability and the u-niqueness of master control-node by leader election. And then, the unique master control-node can guarantee the high-availability of transaction-nodes.2. To solve the problem about split-brain and frequent re-election of the Raft protocol when running on the real application scenarios, we present a modified distributed election protocol. On the condition of basic consistency between nodes on clock. It can guarantee the validity of algorithm avoid the two critical problem.3. The algorithms presented in this thesis are implemented on OceanBase, which is a distributed database with high scalability. A large number of intensive experiments was done in a bank’s real application environment. The experimental results in-dicate that a distributed data management system can recover from failure in few seconds after the primary node downtime. And they can meet the requirements of reliability and availability required by enterprise applications.Many NoSQL and NewSQL systems used for Internet are developed by software communities or Internet companies. They cannot be used to store and manage finan-cial data in our country. We solve the problem about high-availability of scalable data management system in the thesis. And the algorithms have been used in real database system. It is significant to develop distributed data management system independently for mission-critical application in finance industry and bring valuable practical experience.
Keywords/Search Tags:High Availability, Scalable Data Management System, Database Re- covery, Distributed Leader Election, Distributed Maintaining of Consistency
PDF Full Text Request
Related items