Optimal Deployment of Eventually-Serializable Data Services

  • Laurent Michel
  • Alexander Shvartsman
  • Eldine Sonderegger
  • Pascal Van Hentenryck
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5015)


Replication is a fundamental technique for increasing throughput and achieving fault tolerance in distributed data services. However, its implementation may induce significant communication costs to maintain consistency between the replicas. Eventually-Serializable Data Service (ESDS) has been proposed to reduce these costs and enable fast operations on data, while still providing guarantees that the replicated data will eventually be consistent. This paper reconsiders the deployment phase of ESDS, in which a particular implementation of communicating software components must be mapped onto a physical architecture. This deployment aims at minimizing the overall communication costs, while satisfying the constraints imposed by the protocol. Both MIP and CP models are presented and applied to realistic ESDS instances. The experimental results indicate that both models can find optimal solutions and prove optimality. The CP model, however, provides orders of magnitude improvements in efficiency. The limitations of the MIP model and the critical aspects of the CP model are discussed. Symmetry breaking and parallel computing are also shown to bring significant benefits.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aguilera, M.: Hewlett-Packard, Personal communication (2007)Google Scholar
  2. 2.
    Bastarrica, M., Demurjian, S., Shvartsman, A.: Software architectural specification for optimal object distribution. In: SCCC 1998: Proc. of the XVIII Intl. Conf. of the Chilean Computer Science Society, Washington, DC, USA (1998)Google Scholar
  3. 3.
    Bastarrica, M.C.: Architectural specification and optimal deployment of distributed systems. PhD thesis, University of Connecticut (2000)Google Scholar
  4. 4.
    Behrmann, G., David, A., Larsen, K., Möller, O., Pettersson, P., Yi, W.: Uppaal - present and future. In: Proceedings of the 40th IEEE Conference on Decision and Control (CDC 2001), pp. 2881–2886 (2001)Google Scholar
  5. 5.
    Cheiner, O., Shvartsman, A.: Implementing an eventually-serializable data service as a distributed system building block. Networks in Distributed Computing 45, 43–71 (1999)Google Scholar
  6. 6.
    Fekete, A., Gupta, D., Luchangco, V., Lynch, N., Shvartsman, A.: Eventually-serializable data services. In: PODC 1996: Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing, pp. 300–309 (1996)Google Scholar
  7. 7.
    Gilbert, S., Lynch, N.A., Shvartsman, A.A.: RAMBO II: Rapidly reconfigurable atomic memory for dynamic networks. In: DSN, pp. 259–268. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  8. 8.
    IETF. Domain name system, rfc 1034 and rfc 1035 (1990)Google Scholar
  9. 9.
    Kaynar, D.K., Lynch, N., Segala, R., Vaandrager, F.: The Theory of Timed I/O Automata, Synthesis Lectures in Computer Science. Morgan & Claypool Publishers, San Francisco (2006)Google Scholar
  10. 10.
    Larsen, K.G., Pettersson, P., Yi, W.: UPPAAL in a nutshell. International Journal on Software Tools for Technology Transfer 1(1-2), 134–152 (1997)MATHCrossRefGoogle Scholar
  11. 11.
    Lynch, N., Shvartsman, A.: RAMBO: A reconfigurable atomic memory service for dynamic networks. In: Proceedings of the 16th International Symposium on Distributed Computing, pp. 173–190 (2002)Google Scholar
  12. 12.
    Lynch, N., Tuttle, M.: An introduction to Input/Output Automata. CWI-Quarterly 2(3), 219–246 (1989)MATHMathSciNetGoogle Scholar
  13. 13.
    Lynch, N.A., Garland, S., Kaynar, D., Michel, L., Shvartsman, A.: The Tempo Language User Guide and Reference Manual. VeroModo Inc. (December 2007), http://www.veromodo.com
  14. 14.
    Michel, L., See, A., Van Hentenryck, P.: Parallelizing constraint programs transparently. In: Proceedings of the 13th International Conference on the Principles and Practice of Constraint Programming (CP 2007), Providence, RI (2007)Google Scholar
  15. 15.
    Owre, S., Rajan, S., Rushby, J.M., Shankar, N., Srivas, M.K.: PVS: Combining specification, proof checking, and model checking. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 411–414. Springer, Heidelberg (1996)Google Scholar
  16. 16.
    Saito, Y., Frølund, S., Veitch, A.C., Merchant, A., Spence, S.: Fab: building distributed enterprise disk arrays from commodity components. In: Mukherjee, S., McKinley, K.S. (eds.) ASPLOS, pp. 48–58. ACM Press, New York (2004)CrossRefGoogle Scholar
  17. 17.
    Van Hentenryck, P., Flener, P., Pearson, J., Ågren, M.: Tractable symmetry breaking for CSPs with interchangeable values. In: International Joint Conference on Artificial Intelligence (IJCAI 2003) (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Laurent Michel
    • 2
  • Alexander Shvartsman
    • 2
  • Eldine Sonderegger
    • 2
  • Pascal Van Hentenryck
    • 1
  1. 1.Brown UniversityProvidence
  2. 2.University of ConnecticutStorrs

Personalised recommendations