Integrating Group Communication with Transactions for Implementing Persistent Replicated Objects

A widely used computational model for constructing fault-tolerant distributed applications employs atomic transactions for controlling operations on persistent objects. There has been considerable work on data replication techniques for increasing the availability of persistent data that is manipulated under the control of transactions. Process groups with ordered group communications (process groups for short) has also emerged as a model for building available distributed applications. High service availability can be achieved by replicating the service state on multiple processes managed by a group communication infrastructure. These two models are often seen as rivals. This paper examines whether a distributed transaction system can profit from process groups for supporting replication of objects. A general model of distributed objects is used to investigate how objects can be replicated for availability using a system that supports transactions (but no process groups) and a system that supports process groups (but no transactions). A comparative evaluation reveals how a distributed transaction system can exploit group communications for obtaining a flexible approach to supporting replication of objects.

[1]  Rachid Guerraoui,et al.  The Implementation of a CORBA Object Group Service , 1998, Theory Pract. Object Syst..

[2]  Jerome H. Saltzer,et al.  End-to-end arguments in system design , 1984, TOCS.

[3]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[4]  Santosh K. Shrivastava,et al.  Understanding the Role of Atomic Transactions and Group Communications in Implementing Persistent Replicated Objects , 1998, POS/PJW.

[5]  David K. Gifford,et al.  Weighted voting for replicated data , 1979, SOSP '79.

[6]  Santosh K. Shrivastava,et al.  Object Replication in Arjuna , 1994 .

[7]  Newtop: a fault-tolerant group communication protocol , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[8]  Flaviu Cristian,et al.  Synchronous and Asynchronous Group Communication. , 1996 .

[9]  Sam Toueg,et al.  Unreliable failure detectors for reliable distributed systems , 1996, JACM.

[10]  Kenneth P. Birman,et al.  The process group approach to reliable distributed computing , 1992, CACM.

[11]  Gustavo Alonso,et al.  A suite of database replication protocols based on group communication primitives , 1998, Proceedings. 18th International Conference on Distributed Computing Systems (Cat. No.98CB36183).

[12]  Santosh K. Shrivastava,et al.  Implementing high availability CORBA applications with Java , 1999, Proceedings 1999 IEEE Workshop on Internet Applications (Cat. No.PR00197).

[13]  Paul D. Ezhilchelvan,et al.  Design and implemantation of a CORBA fault-tolerant object group service , 1999, DAIS.

[14]  Louise E. Moser,et al.  Totem: a fault-tolerant multicast group communication system , 1996, CACM.

[15]  David R. Cheriton,et al.  Understanding the limitations of causally and totally ordered communication , 1994, SOSP '93.

[16]  Kenneth P. Birman The Process Group Approach to Reliable , 2000 .

[17]  André Schiper,et al.  From group communication to transactions in distributed systems , 1996, CACM.

[18]  Rachid Guerraoui,et al.  System support for object groups , 1998, OOPSLA '98.

[19]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[20]  Alberto Montresor,et al.  Group Communication in Partitionable Systems: Specification and Algorithms , 2001, IEEE Trans. Software Eng..

[21]  Paul D. Ezhilchelvan,et al.  Enhancing replica management services to tolerate group failures , 1999, Proceedings 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'99) (Cat. No.99-61702).

[22]  Flaviu Cristian,et al.  Synchronous and asynchronous , 1996, CACM.

[23]  Danny Dolev,et al.  The Transis approach to high availability cluster communication , 1996, CACM.

[24]  Idit Keidar,et al.  Efficient message ordering in dynamic networks , 1996, PODC '96.

[25]  Santosh K. Shrivastava,et al.  Maintaining information about persistent replicated objects in a distributed system , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[26]  Priya Narasimhan,et al.  Replica consistency of CORBA objects in partitionable distributed systems , 1997, Distributed Syst. Eng..

[27]  Rachid Guerraoui,et al.  Software-Based Replication for Fault Tolerance , 1997, Computer.