Practical Database Replication

This chapter illustrates how the concepts and algorithms described earlier in this book can be used to build practical database replication systems. This is achieved first by addressing architectural challenges on how required functionality is provided by generally available software componentes and then how different components can be efficiently integrated. A second set of practical challenges arises from experience on how performance assumptions map to actual environments and real workloads. The result is a generic architecture for replicated database management systems, focusing on the interfaces between key components, and then on how different algorithmic and practical optimization options map to real world gains. This shows how consistent database replication is achievable in the current state of the art.

[1]  Rachid Guerraoui,et al.  A High Throughput Atomic Storage Algorithm , 2007, 27th International Conference on Distributed Computing Systems (ICDCS '07).

[2]  Andrew S. Tanenbaum,et al.  Group communication in the Amoeba distributed operating system , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[3]  Francisco Moura,et al.  Group-Based Replication of On-Line Transaction Processing Servers , 2005, LADC.

[4]  Alberto Bartoli,et al.  Selecting a "primary partition" in partitionable asynchronous distributed systems , 1997, Proceedings of SRDS'97: 16th IEEE Symposium on Reliable Distributed Systems.

[5]  Ricardo Jiménez-Peris,et al.  Middleware based data replication providing snapshot isolation , 2005, SIGMOD '05.

[6]  André Schiper,et al.  Handling message semantics with Generic Broadcast protocols , 2002, Distributed Computing.

[7]  Willy Zwaenepoel,et al.  C-JDBC: Flexible Database Clustering Middleware , 2004, USENIX Annual Technical Conference, FREENIX Track.

[8]  Yair Amir,et al.  A low latency, loss tolerant architecture and protocol for wide area group communication , 2000, Proceeding International Conference on Dependable Systems and Networks. DSN 2000.

[9]  Gustavo Alonso,et al.  Scalable Replication in Database Clusters , 2000, DISC.

[10]  Ana Respício,et al.  On Statistically Estimated Optimistic Delivery in Wide-Area Total Order Protocols , 2006, 2006 12th Pacific Rim International Symposium on Dependable Computing (PRDC'06).

[11]  Luís E. T. Rodrigues,et al.  Appia, a flexible protocol kernel supporting multiple coordinated channels , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[12]  Idit Keidar,et al.  Optimistic Virtual Synchrony , 2000, Proceedings 19th IEEE Symposium on Reliable Distributed Systems SRDS-2000.

[13]  David M. Nicol,et al.  Towards Realistic Million-Node Internet Simulation , 1999, PDPTA.

[14]  Raghunath Othayoth Nambiar,et al.  Shaping the Landscape of Industry Standard Benchmarks: Contributions of the Transaction Processing Performance Council (TPC) , 2011, TPCTC.

[15]  Gustavo Alonso,et al.  Don't Be Lazy, Be Consistent: Postgres-R, A New Way to Implement Database Replication , 2000, VLDB.

[16]  Francisco Moura,et al.  Optimistic total order in wide area networks , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[17]  Robbert van Renesse,et al.  Reliable Distributed Computing with the Isis Toolkit , 1994 .

[18]  José Pereira,et al.  Revisiting 1-copy equivalence in clustered databases , 2006, SAC '06.

[19]  Luís E. T. Rodrigues,et al.  On the Use of a Reflective Architecture to Augment Database Management Systems , 2007, J. Univers. Comput. Sci..

[20]  Dimiter R. Avresky,et al.  Dependable Network Computing , 1999 .

[21]  Jennifer Widom,et al.  Database Systems: The Complete Book , 2001 .

[22]  Rachid Guerraoui,et al.  The Database State Machine Approach , 2003, Distributed and Parallel Databases.

[23]  Luís E. T. Rodrigues,et al.  An indulgent uniform total order algorithm with optimistic delivery , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[24]  Alberto Montresor,et al.  Group membership and view synchrony in partitionable asynchronous distributed systems: specifications , 1997, OPSR.

[25]  Anne-Marie Kermarrec,et al.  NEEM: network-friendly epidemic multicast , 2003, 22nd International Symposium on Reliable Distributed Systems, 2003. Proceedings..

[26]  Ricardo Jiménez-Peris,et al.  Lightweight Reflection for Middleware-based Database Replication , 2006, 2006 25th IEEE Symposium on Reliable Distributed Systems (SRDS'06).

[27]  Danny Dolev,et al.  A framework for partitionable membership service , 1996, PODC '96.

[28]  Gregor Kiczales,et al.  Towards a new model of abstraction in software engineering , 1991, Proceedings 1991 International Workshop on Object Orientation in Operating Systems.

[29]  Gustavo Alonso,et al.  Improving the scalability of fault-tolerant database clusters , 2002, Proceedings 22nd International Conference on Distributed Computing Systems.

[30]  Luís E. T. Rodrigues,et al.  Semantically Reliable Multicast: Definition, Implementation, and Performance Evaluation , 2003, IEEE Trans. Computers.

[31]  Francisco Moura,et al.  Testing the dependability and performance of group communication based database replication protocols , 2005, 2005 International Conference on Dependable Systems and Networks (DSN'05).

[32]  Mark Garland Hayden,et al.  The Ensemble System , 1998 .

[33]  José Pereira,et al.  AKARA: A Flexible Clustering Protocol for Demanding Transactional Workloads , 2008, OTM Conferences.

[34]  Luís E. T. Rodrigues,et al.  From spontaneous total order to uniform total order: different degrees of optimistic delivery , 2006, SAC '06.

[35]  Luís E. T. Rodrigues,et al.  GORDA: An Open Architecture for Database Replication , 2007, Sixth IEEE International Symposium on Network Computing and Applications (NCA 2007).

[36]  Idit Keidar,et al.  Totally ordered broadcast in the face of network partitions: exploiting group communication for repl , 1999 .

[37]  André Schiper,et al.  Optimistic Atomic Broadcast , 1998, DISC.

[38]  Paulo Veríssimo,et al.  Totally ordered multicast in large-scale systems , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[39]  Pattie Maes Concepts and experiments in computational reflection , 1987, OOPSLA 1987.