An Efficient Non Blocking Two Phase Commit Protocol for Distributed Transactions

The 2-phase commit protocol is a standard algorithm for safeguarding the ACID properties of transaction in the distributed system. In distributed database systems (DDBSs), transaction blocks occurs during two-phase commit (2PC) processing if the coordinator itself fails and at the same time some client has declared itself ready to commit the transaction. Thus the blocking phenomena reduce the availability of the system, since the blocked transactions keep all the resources until they receive the final command from the coordinator after its recovery. To remove the blocking problem in 2PC protocol, three phase commit (3PC) protocol was proposed. Although 3PC protocol eliminates the blocking problem, it involves extra overhead of one more cycle and in turn increases the time taken for the transaction to complete. In this paper we proposed a new architecture for 2PC by employing a Backup coordinator, which will reduce the transaction blocking considerably. However in worst case, the blocking can occur in the Backup coordinator also. In such a rare case occurs, the client has to wait until the recovery of either the coordinator or the backup coordinator. This protocol suits best for DDBS environment in which transaction fail frequently and messages take longer time to deliver.

[1]  Dale Skeen,et al.  A Quorum-Based Commit Protocol , 1982, Berkeley Workshop.

[2]  Bipin C. Desai,et al.  A two-phase commit protocol and its performance , 1996, Proceedings of 7th International Conference and Workshop on Database and Expert Systems Applications: DEXA 96.

[3]  A. Damodaram,et al.  A Simulation of Performance of Commit Protocols in Distributed Environment , 2011 .

[4]  Songchun Moon,et al.  Nonblocking two-phase commit protocol to avoid unnecessary transaction abort for distributed systems , 1997, J. Syst. Archit..

[5]  Wang Haiyang,et al.  A New Model for Maintaining Distributed Data Consistence , 2008, 2008 International Conference on Computer Science and Software Engineering.

[6]  Panos K. Chrysanthis,et al.  The Implicit-Yes Vote Commit Protocol with Delegation of Commitment , 1996 .

[7]  Flaviu Cristian,et al.  A low-cost atomic commit protocol , 1990, Proceedings Ninth Symposium on Reliable Distributed Systems.

[8]  Masaru Kitsuregawa,et al.  Reducing the blocking in two-phase commit protocol employing backup sites , 1998, Proceedings. 3rd IFCIS International Conference on Cooperative Information Systems (Cat. No.98EX122).

[9]  Butler W. Lampson,et al.  A New Presumed Commit Optimization for Two Phase Commit , 1993, VLDB.

[10]  Abdelouahab Abid,et al.  Design and Implementaion of A Two-Phase Commit Protocol Simulator , 2006, Int. Arab J. Inf. Technol..

[11]  Dale Skeen,et al.  Nonblocking commit protocols , 1981, SIGMOD '81.

[12]  Arun Kumar Yadav,et al.  A Distributed Architecture for Transactions Synchronization in Distributed Database Systems , 2010 .

[13]  Dale Skeen,et al.  Crash recovery in a distributed database system , 1982 .