Skip to main content

Rigorous Design of Fault-Tolerant Transactions for Replicated Database Systems Using Event B

  • Chapter
Rigorous Development of Complex Fault-Tolerant Systems

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4157))

  • 498 Accesses

  • 19 Citations

Abstract

System availability is improved by the replication of data objects in a distributed database system. However, during updates, the complexity of keeping replicas identical arises due to failures of sites and race conditions among conflicting transactions. Fault tolerance and reliability are key issues to be addressed in the design and architecture of these systems. Event B is a formal technique which provides a framework for developing mathematical models of distributed systems by rigorous description of the problem, gradually introducing solutions in refinement steps, and verification of solutions by discharge of proof obligations. In this paper, we present a formal development of a distributed system using Event B that ensures atomic commitment of distributed transactions consisting of communicating transaction components at participating sites. This formal approach carries the development of the system from an initial abstract specification of transactional updates on a one copy database to a detailed design containing replicated databases in refinement. Through refinement we verify that the design of the replicated database confirms to the one copy database abstraction.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Abrial, J.R.: The B Book: Assigning Programs to Meaning. Cambridge University Press, Cambridge (1996)

    Book  Google Scholar 

  2. Abrial, J.R.: Extending B without changing it. (For Distributed System). In: Proc. of 1st Conf. on B Method, pp. 169–191 (1996)

    Google Scholar 

  3. Abrial, J.R., Cansell, D., Mery, D.: A Mechanically Proved and Incremetal development of IEEE1394 Tree Identify Protocol. Formal Aspect of Computing 14, 215–227 (2003)

    Article  Google Scholar 

  4. Abrial, J.R., Cansell, D.: Click’n’Prove - Interactive Proofs within Set Theory (2003)

    Google Scholar 

  5. Agrawal, D., Alonso, G., Stanoi, I.: Exploiting Atomic Broadcast in Replicated Database. In: Proc. of Europar 1997 (1997)

    Google Scholar 

  6. Babaoglu, O., Bartoli, A., Dini, G.: Replicated file management in large scale distributed system. In: Tel, G., Vitányi, P.M.B. (eds.) WDAG 1994. LNCS, vol. 857, pp. 1–16. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

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

    Google Scholar 

  8. Birman, K.P., Schiper, A., Stephenson, P.: Lighweight causal and atomic group multicast. ACM Transaction on Computer System 9(3), 272–314 (1991)

    Article  Google Scholar 

  9. Butler, M.: On the use of Data Refinement in the Development of Secure Communications Systems. Formal Aspects of Computing 14, 2–34 (2002)

    Article  MATH  Google Scholar 

  10. Butler, M.: An Approach to Design of Distributed Systems with B AMN. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212, pp. 223–241. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  11. Butler, M., Walden, M.: Distributed System Development in B. In: Proc. of Ist Conf. in B Method, Nantes, pp. 155–168 (1996)

    Google Scholar 

  12. Cansell, D., Mery, D.: Foundations of B Method. Computing and Informatics 22, 1–31 (2003)

    MathSciNet  Google Scholar 

  13. B Core UK Ltd. B-Toolkit Manuals (1999)

    Google Scholar 

  14. Ekwall, R., Schiper, A.: Replication: Understanding the advantage of atomic broadcast over quorum systems. Journal of Universal Computer Science 11(5), 703–711 (2005)

    Google Scholar 

  15. Fekete, A., Frans Kaashoek, M., Lynch, N.: Implementing Sequentially Consistent Shared Objects using Broadcast and Point-To-Point Communication. Journal of the ACM 45(1), 35–69 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  16. Gray, J., Reuter, A.: Transaction Processing: Concepts and Technique. Morgan Kaufmann, San Francisco (1993)

    Google Scholar 

  17. Holliday, J.: Replicated Database Recovery using Multicast Communication. In: IEEE Intl. Symposium on Network Computing and Application, NCA 2001, pp. 104–107 (2001)

    Google Scholar 

  18. Kemme, B., Alonso, G.: A New Approach to developing and implementing eager database replication protocols. ACM Transaction on Database System 25(3), 333–379 (2000)

    Article  Google Scholar 

  19. Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1996)

    MATH  Google Scholar 

  20. Melliar, P., Amir, Y., Moser, L., Agrawala, V.: Broadcast protocols for Distributed Systems. IEEE Transactions on Parallel and Distributed System 1(1), 17–25 (1990)

    Article  Google Scholar 

  21. Metayer, C., Abrial, J.R., Voisin, L.: Event-B Language, RODIN Deliverables 3.2 (2005), http://rodin.cs.ncl.ac.uk/deliverables/D7.pdf

  22. Moser, L., Mellier, P., Agrawal, D., Budhia, R., Papadopoulos, C.: TOTEM: A fault tolerant multicast group communication. Communication of ACM 39(4), 54–63 (1996)

    Article  Google Scholar 

  23. Ozsu, M.T., Valduriez, P.: Principles of Distribted Database Systems. Prentice-Hall, Englewood Cliffs (1999)

    Google Scholar 

  24. Rezazadeh, A., Butler, M.: Some Guidelines for Formal Development of Web-Based Applications in B-Method. In: Treharne, H., King, S., Henson, M.C., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 472–492. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  25. Patino-Martinez, M., Jimenez-Peris, R., Kemme, B., Alonso, G.: Consistent Database Replication at the Middleware Level. ACM Transactions on Computer Systems (TOCS) 23(4), 375–423 (2005)

    Article  Google Scholar 

  26. Silaghi, B., Keleher, P., Bhattacharjee, B.: Multi-Dimensional Quorum Sets for Red-Few Write-Many Replica Control Protocols. In: Proc. of the 4th CCGRID/GP2PC, Chicago, IL (April 2004)

    Google Scholar 

  27. Schneider, S.: The B-Method. Palgrave Publications (2001)

    Google Scholar 

  28. Silberschatz, A., Korth, H., Sudarshan, S.: Database System Concepts. McGraw-Hill, New York (2001)

    Google Scholar 

  29. Stanoi, I., Agrawal, D., El Abbadi, A.: Using Broadbast Primitives in Replicated Data. In: Proceddings of 18th IEEE Intl. Conf. on Distributed Computing System, ICDCS 1998, pp. 148–155 (1998)

    Google Scholar 

  30. Steria- Atelier-B User and Reference Manuals (1997)

    Google Scholar 

  31. Yadav, D., Butler, M.: Application of Event B to Global Causal Ordering for Fault Tolerant Transactions. In: Proc. of REFT 2005, Newcastle upon Tyne, pp. 93–103 (2005), http://eprints.ecs.soton.ac.uk/10981/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Yadav, D., Butler, M. (2006). Rigorous Design of Fault-Tolerant Transactions for Replicated Database Systems Using Event B. In: Butler, M., Jones, C.B., Romanovsky, A., Troubitsyna, E. (eds) Rigorous Development of Complex Fault-Tolerant Systems. Lecture Notes in Computer Science, vol 4157. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11916246_18

Download citation

  • DOI: https://doi.org/10.1007/11916246_18

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-48265-9

  • Online ISBN: 978-3-540-48267-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Publish with us

Policies and ethics