Skip to main content

Database Replication: A Tutorial

  • Chapter
Replication

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5959))

Abstract

This chapter provides an in-depth introduction to database replication, in particular how transactions are executed in a replicated environment. We describe a suite of replication protocols and illustrate the design alternatives using a two-step approach. We first categorize replication protocols by only two parameters and present a simple example protocol for each of the resulting categories. Further parameters are then introduced, and we illustrate them by the given replication protocols and some variants.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abbadi, A.E., Toueg, S.: Availability in partitioned replicated databases. In: ACM Int. Symp. on Principles of Database Systems (PODS), pp. 240–251 (1986)

    Google Scholar 

  2. Amir, Y., Tutu, C.: From Total Order to Database Replication. In: IEEE Int. Conf. on Distributed Computing Systems (ICDCS), pp. 494–506 (2002)

    Google Scholar 

  3. Amza, C., Cox, A.L., Zwaenepoel, W.: Distributed Versioning: Consistent Replication for Scaling Back-End DBs of Dynamic Content Web Sites. In: Endler, M., Schmidt, D.C. (eds.) Middleware 2003. LNCS, vol. 2672, pp. 282–302. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  4. Amza, C., Cox, A.L., Zwaenepoel, W.: A comparative evaluation of transparent scaling techniques for dynamic content servers. In: IEEE Int. Conf. on Data Engineering (ICDE), pp. 230–241 (2005)

    Google Scholar 

  5. Bernstein, P.A., Fekete, A., Guo, H., Ramakrishnan, R., Tamma, P.: Relaxed-currency serializability for middle-tier caching and replication. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 599–610 (2006)

    Google Scholar 

  6. Bernstein, P.A., Goodman, N.: An algorithm for concurrency control and recovery in replicated distributed databases. ACM Transactions on Database Systems (TODS) 9(4), 596–615 (1984)

    Article  MathSciNet  Google Scholar 

  7. Bernstein, P.A., Hadzilacos, V., Goodman, N.: Concurrency Control and Recovery in Database Systems. Addison-Wesley, Reading (1987)

    Google Scholar 

  8. Breitbart, Y., Komondoor, R., Rastogi, R., Seshadri, S., Silberschatz, A.: Update propagation protocols for replicated databases. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 97–108 (1999)

    Google Scholar 

  9. Carey, M.J., Livny, M.: Conflict detection tradeoffs for replicated data. ACM Transactions on Database Systems (TODS) 16(4), 703–746 (1991)

    Article  Google Scholar 

  10. Cecchet, E., Marguerite, J., Zwaenepoel, W.: C-jdbc: Flexible database clustering middleware. In: USENIX Annual Technical Conference, FREENIX Track, pp. 9–18 (2004)

    Google Scholar 

  11. Cecchet, E., Candea, G., Ailamaki, A.: Middleware-based database replication: the gaps between theory and practice. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 739–752 (2008)

    Google Scholar 

  12. Chen, P.M., Lee, E.L., Gibson, G.A., Katz, R.H., Patterson, D.A.: Raid: High-performance, reliable secondary storage. ACM Comput. Surv. 26(2), 145–185 (1994)

    Article  Google Scholar 

  13. Chockler, G., Keidar, I., Vitenberg, R.: Group communication specifications: a comprehensive study. ACM Computer Surveys 33(4), 427–469 (2001)

    Article  Google Scholar 

  14. Chundi, P., Rosenkrantz, D.J., Ravi, S.S.: Deferred updates and data placement in distributed databases. In: IEEE Int. Conf. on Data Engineering (ICDE), pp. 469–476 (1996)

    Google Scholar 

  15. Daudjee, K., Salem, K.: Lazy database replication with snapshot isolation. In: Int. Conf. on Very Large Data Bases (VLDB), pp. 715–726 (2006)

    Google Scholar 

  16. Elnikety, S., Dropsho, S.G., Pedone, F.: Tashkent: uniting durability with transaction ordering for high-performance scalable database replication. In: EuroSys Conference, pp. 117–130 (2006)

    Google Scholar 

  17. Elnikety, S., Dropsho, S.G., Zwaenepoel, W.: Tashkent+: memory-aware load balancing and update filtering in replicated databases. In: EuroSys Conference, pp. 399–412 (2007)

    Google Scholar 

  18. Gançarski, S., Naacke, H., Pacitti, E., Valduriez, P.: The leganet system: Freshness-aware transaction routing in a database cluster. Information Systems 32(2), 320–343 (2007)

    Article  Google Scholar 

  19. Ghanbari, S., Soundararajan, G., Chen, J., Amza, C.: Adaptive learning of metric correlations for temperature-aware database provisioning. In: Int. Conf. on Autonomic Computing, ICAC (2007)

    Google Scholar 

  20. Gray, J., Helland, P., O’Neil, P.E., Shasha, D.: The dangers of replication and a solution. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 173–182 (1996)

    Google Scholar 

  21. Gupta, A., Mumick, I.S.: Maintenance of materialized views: Problems, techniques, and applications. IEEE Data Engineering Bulletin 18(2), 3–18 (1995)

    Google Scholar 

  22. Holliday, J., Agrawal, D., Abbadi, A.E.: The performance of database replication with group multicast. In: IEEE Int. Conf. on Fault-Tolerant Computing Systems (FTCS), pp. 158–165 (1999)

    Google Scholar 

  23. Jiménez-Peris, R., Patiño-Martínez, M., Kemme, B., Alonso, G.: Improving the scalability of fault-tolerant database clusters. In: IEEE Int. Conf. on Distributed Computing Systems (ICDCS), pp. 447–484 (2002)

    Google Scholar 

  24. Jiménez-Peris, R., Patiño-Martínez, M., Alonso, G., Kemme, B.: Are quorums an alternative for data replication? ACM Transactions on Database Systems (TODS) 28(3), 257–294 (2003)

    Article  Google Scholar 

  25. Kemme, B., Alonso, G.: Don’t be lazy, be consistent: Postgres-R, a new way to implement database replication. In: Int. Conf. on Very Large Data Bases (VLDB), pp. 134–143 (2000)

    Google Scholar 

  26. Kemme, B., Alonso, G.: A new approach to developing and implementing eager database replication protocols. ACM Transactions on Database Systems (TODS) 25(3), 333–379 (2000)

    Article  Google Scholar 

  27. Kemme, B., Pedone, F., Alonso, G., Schiper, A., Wiesmann, M.: Using optimistic atomic broadcast in transaction processing systems. IEEE Transactions on Knowledge and Data Engineering (TKDE) 15(4), 1018–1032 (2003)

    Article  Google Scholar 

  28. Leff, A., Rayfield, J.T.: Alternative edge-server architectures for enterprise javaBeans applications. In: Jacobsen, H.-A. (ed.) Middleware 2004. LNCS, vol. 3231, pp. 195–211. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  29. Lin, Y., Kemme, B., Patiño-Martínez, M., Jiménez-Peris, R.: Middleware based data replication providing snapshot isolation. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 419–430 (2005)

    Google Scholar 

  30. Lin, Y., Kemme, B., Patiño-Martínez, M., Jiménez-Peris, R.: Enhancing edge computing with database replication. In: Int. Symp. on Reliable Distributed Systems (SRDS), pp. 45–54 (2007)

    Google Scholar 

  31. Luo, Q., Krishnamurthy, S., Mohan, C., Pirahesh, H., Woo, H., Lindsay, B.G., Naughton, J.F.: Middle-tier database caching for e-business. In: ACM SIGMOD Int. Conf. on Management of Data, pp. 600–611 (2002)

    Google Scholar 

  32. Milan-Franco, J.M., Jiménez-Peris, R., Patiño-Martínez, M., Kemme, B.: Adaptive middleware for data replication. In: Jacobsen, H.-A. (ed.) Middleware 2004. LNCS, vol. 3231, pp. 175–194. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  33. Mohan, C., Haderle, D.J., Lindsay, B.G., Pirahesh, H., Schwarz, P.M.: Aries: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Transactions on Database Systems (TODS) 17(1), 94–162 (1992)

    Article  Google Scholar 

  34. Pacitti, E., Minet, P., Simon, E.: Fast Algorithm for Maintaining Replica Consistency in Lazy Master Replicated Databases. In: Int. Conf. on Very Large Data Bases (VLDB), pp. 126–137 (1999)

    Google Scholar 

  35. Patiño-Martínez, M., Jiménez-Peris, R., Kemme, B., Alonso, G.: MIDDLE-R: Consistent database replication at the middleware level. ACM Transactions on Computer Systems (TOCS) 23(4), 375–423 (2005)

    Article  Google Scholar 

  36. Pedone, F., Frølund, S.: Pronto: A fast failover protocol for off-the-shelf commercial databases. In: Symposium on Reliable Distributed Systems (SRDS), pp. 176–185 (2000)

    Google Scholar 

  37. Pedone, F., Guerraoui, R., Schiper, A.: The Database State Machine Approach. Distributed and Parallel Databases 14(1), 71–98 (2003)

    Article  Google Scholar 

  38. Perez-Sorrosal, F., Patiño-Martinez, M., Jimenez-Peris, R., Kemme, B.: Consistent and scalable cache replication for multi-tier J2EE applications. In: Cerqueira, R., Campbell, R.H. (eds.) Middleware 2007. LNCS, vol. 4834, pp. 328–347. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  39. Plattner, C., Alonso, G.: Ganymed: Scalable replication for transactional web applications. In: Jacobsen, H.-A. (ed.) Middleware 2004. LNCS, vol. 3231, pp. 155–174. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  40. Rodrigues, L., Miranda, H., Almeida, R., Martins, J., Vicente, P.: Strong Replication in the GlobData Middleware. In: Proceedings Workshop on Dependable Middleware-Based Systems (part of DSN02), pp. 503–510. IEEE Computer Society Press, Los Alamitos (2002)

    Google Scholar 

  41. Röhm, U., Böhm, K., Schek, H.J., Schuldt, H.: FAS - a freshness-sensitive coordination middleware for a cluster of OLAP components. In: Int. Conf. on Very Large Data Bases (VLDB), pp. 754–765 (2002)

    Google Scholar 

  42. Saito, Y., Shapiro, M.: Optimistic replication. ACM Comput. Surv. 37(1), 42–81 (2005)

    Article  MATH  Google Scholar 

  43. Schiper, N., Schmidt, R., Pedone, F.: Optimistic algorithms for partial database replication. In: Shvartsman, M.M.A.A. (ed.) OPODIS 2006. LNCS, vol. 4305, pp. 81–93. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  44. Serrano, D., Patiño-Martínez, M., Jiménez-Peris, R., Kemme, B.: An autonomic approach for replication of internet-based services. In: Int. Symp. on Reliable Distributed Systems (SRDS), pp. 127–136 (2008)

    Google Scholar 

  45. Serrano, D., Patiño-Martínez, M., Jiménez, R., Kemme, B.: Boosting database replication scalability through partial replication and 1-copy-SI. In: IEEE Pacific-Rim Conf. on Distributed Computing (PRDC), pp. 290–297 (2007)

    Google Scholar 

  46. Sivasubramanian, S., Alonso, G., Pierre, G., van Steen, M.: Globedb: autonomic data replication for web applications. In: Int. World Wide Web Conf (WWW), pp. 33–42 (2005)

    Google Scholar 

  47. Wu, S., Kemme, B.: Postgres-R(SI): Combining replica control with concurrency control based on snapshot isolation. In: IEEE Int. Conf. on Data Engineering (ICDE), pp. 422–433 (2005)

    Google Scholar 

  48. Zuikeviciute, V., Pedone, F.: Conflict-aware load-balancing techniques for database replication. In: ACM Symp. on Applied Computing (SAC), pp. 2169–2173 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Kemme, B., Jiménez-Peris, R., Patiño-Martínez, M., Alonso, G. (2010). Database Replication: A Tutorial. In: Charron-Bost, B., Pedone, F., Schiper, A. (eds) Replication. Lecture Notes in Computer Science, vol 5959. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11294-2_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11294-2_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11293-5

  • Online ISBN: 978-3-642-11294-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics