Font Size: a A A

Concurrency Control For Highly Avilable Transaction Processing Systems

Posted on:2020-05-30Degree:DoctorType:Dissertation
Country:ChinaCandidate:J W GuoFull Text:PDF
GTID:1368330596467787Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Transaction processing is an important characteristic of database management systems.In recent years,with the development of the mobile Internet,Internet applications urgently require database management systems to provide highly available services.Replication can increase the availability of system services.Meanwhile,the consensus protocol can provide strongly consistent fault-tolerant services.Therefore,highly available transaction processing systems that consist of multiple replicas have emerged,which utilize consensus protocol to synchronize data from leader replica to followers.They have been applied to serve mission-critical applications of Internet companies.However,there are many challenges in highly available transaction processing systems.First,concurrency control guarantees the transaction correctness.But it leads to the result that a read of transactions may fail or be blocked,which sacrifices the scalability of the system.Second,replica recovery directly serves concurrency control of transaction processing.But consensus protocols increase the cost of replica recovery,which impacts the availability and overall performance of the system.Finally,an optimistic concurrency control protocol guarantees the transaction correctness through a validation mechanism.But in hybrid workloads,a single validation method reduces the transaction throughput.Therefore,we need to study concurrency control in highly available transaction processing systems.The main contributions of this thesis are as follows.1.For the scalability problem,the efficient snapshot isolation(ESI)mechanism is proposed to increase the processing performance of follower nodes.In a highly available database system using strong snapshot isolation,to avoid read failure or read blocking in follower nodes,this thesis designs an early log replay(ELR)mechanism.Since the status of a follower using ELR does not lag behind the leader's,a transaction read in follower cannot fail or be blocked,which improves the processing performance in follower nodes.To reduce the load pressure of the leader node,this thesis also designs an adaptive timestamp allocation(ATA)mechanism,which can greatly reduce the number of start timestamp requests in the leader node.2.For the replica recovery problem,the accurate and efficient log repair(AELR)mechanism is proposed to reduce the cost and time of replica recovery.In order to accelerate the replica recovery,this thesis introduces the concept of special mark log entry to pinpoint the divergent point in the log.Then,we leverage special mark log entries to design an accurate and efficient log repair method(AELR),which can repair the replica's log with only one network round trip and the minimum log transfer volume.Therefore,AELR reduces the impact of replica recovery on transaction processing.To efficiently implement the recovery mechanism,this thesis also proposes a series of optimization mechanisms.3.For the dynamically changing hybrid workloads,the adaptive optimistic concurrency control protocol(AOCC)is proposed to improve the processing performance of the leader node.This thesis first designs a transaction-level AOCC,which can select an appropriate tracking mechanism and validation method for each transaction according to the transaction's operation type.In order to further enhance the adaptability under different workloads,this paper designs a query-level AOCC,which takes into account the characteristics of the query statement and the real-time workload.Under the heterogeneous workload,AOCC on query level can dynamically choose the validation method with minimal cost for each query,which reduces the overall cost of transaction processing and improves the overall performance of the database system.In summary,this thesis deeply studies the concurrency control in highly available transaction processing systems,and designs a series of optimization mechanisms.First,in order to improve the overall processing performance of the system,this thesis designs a multi-version concurrency control protocol ESI that supports scalability.Second,in order to reduce the impact on transaction processing,this thesis designs a low-cost log repair method AELR which can accelerate the replica recovery.Finally,in order to improve the transaction processing performance of the leader node,this thesis proposes a new concurrency control protocol AOCC for hybrid workloads.The results of a large number of experiments show the effectiveness of proposed optimization mechanisms.Future research directions include: optimizing the efficiency of log synchronization,improving the scalability of distributed transactions,and optimizing transaction scheduling under the high-contention workloads.
Keywords/Search Tags:Transaction Processing, Highly Available System, Concurrency Control, Snapshot Isolation, Optimistic Validation, Log Repair
PDF Full Text Request
Related items