Abstract

Distributed database systems are subject to data inconsistency in the presence of failures. In order to coordinate the execution of the subtransactions of a global transaction, it is necessary to commit or abort all these subtransactions to maintain data consistency. Two classes of atomic commitment protocols have been proposed in the literature. The first class, known as fault tolerant protocol, aborts a transaction without checking for alternative solutions. The second, optimistic protocol, ignores the occurrence of errors and assumes that a global transaction commits in most cases. However, this would lead to compensating transactions so as to preserve data consistency, in case the global transaction aborts. In this paper, we study the performance of a Prudent Two-Phase Commit protocol, which in the presence of failures does not abort a transaction needlessly. The prudent protocol gives the transaction a second chance before deciding to abort. This prudent approach prevents a transaction from aborting in case of transient communication error or failure. In this way, it improves system performance and reliability. For the purpose of this study, we simulate a distributed database system. The performance of the simulated distributed system is measured while using the Prudent, Basic, and Optimistic Two-Phase Commit protocols. The performances of such protocols are compared and evaluated according to a number of widely accepted performance metrics. The final performance results are presented with a discussion and interpretation of the graphs generated by the simulation. The results of these simulations confirm the improvement in system performance with the Prudent Two-Phase Commit protocol.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call