ThespisDIIP: Distributed Integrity Invariant Preservation

  • Carl CamilleriEmail author
  • Joseph G. Vella
  • Vitezslav Nezval
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 903)


Thespis is a distributed database middleware that leverages the Actor model to implement causal consistency over an industry-standard DBMS, whilst abstracting complexities for application developers behind a REST open-protocol interface. ThespisDIIP is an extension that treats the concept of integrity invariance preservation for the class of problems where value changes must be satisfied according to a Linear Arithmetic Inequality constraint. An example of this constraint is a system enforcing a constraint that a transaction is only accepted if there are sufficient funds in a bank account. Our evaluation considers correctness, performance and scalability aspects of ThespisDIIP. We also run empirical experiments using YCSB to show the efficacy of the approach for a variety of workloads and a number of conditions, determining that integrity invariants are preserved in a causally-consistent distributed database, whilst minimising latency in the user’s critical path.


Distributed integrity invariant preservation Causal consistency Distributed databases Actor model Middleware 



This work is partly funded by the ENDEAVOUR Scholarship Scheme (Malta), part-financed by the European Union – European Social Fund (ESF) under Operational Programme II – Cohesion Policy 2014–2020.


  1. 1.
    Ahamad, M., Neiger, G., Burns, J.E., Kohli, P., Hutto, P.W.: Causal memory: definitions, implementation, and programming. Distrib. Comput. 9(1), 37–49 (1995)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Almeida, P.S., Shoker, A., Moreno, C.B.: Exactly-once quantity transfer (2015)Google Scholar
  3. 3.
    Bailis, P., Fekete, A., Franklin, M.J., Ghodsi, A.: Coordination avoidance in database systems. Proc. VLDB Endow. 8(3), 185–196 (2014)CrossRefGoogle Scholar
  4. 4.
    Bailis, P., Fekete, A., Franklin, M.J., Ghodsi, A., Hellerstein, J.M., Stoica, I.: Feral concurrency control: an empirical investigation of modern application integrity. In: Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data, pp. 1327–1342. ACM (2015)Google Scholar
  5. 5.
    Bailis, P., Ghodsi, A., Hellerstein, J.M., Stoica, I.: Bolt-on causal consistency. In: Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data, pp. 761–772. ACM (2013)Google Scholar
  6. 6.
    Balegas, V., Preguiça, N., Duarte, S., Ferreira, C., Rodrigues, R.: IPA: invariant-preserving applications for weakly-consistent replicated databases. arXiv preprint arXiv:1802.08474 (2018)
  7. 7.
    Barbará-Millá, D., Garcia-Molina, H.: The demarcation protocol: a technique for maintaining constraints in distributed database systems. VLDB J. - Int. J. Very Large Data Bases 3(3), 325–353 (1994)CrossRefGoogle Scholar
  8. 8.
    Borr, A.: Transaction monitoring in encompass. In: Proceedings of 7th VLDB (1981)Google Scholar
  9. 9.
    Brewer, E.A.: Towards robust distributed systems. In: PODC, vol. 7 (2000)Google Scholar
  10. 10.
    Camilleri, C., Vella, J.G., Nezval, V.: Thespis: actor-based causal consistency. In: 2017 28th International Workshop on Database and Expert Systems Applications (DEXA), pp. 42–46. IEEE (2017)Google Scholar
  11. 11.
    Cetintemel, U., Ozden, B., Franklin, M.J., Silberschatz, A.: Design and evaluation of redistribution strategies for wide-area commodity distribution. In: 2001 21st International Conference on Distributed Computing Systems, pp. 154–161. IEEE (2001)Google Scholar
  12. 12.
    Cooper, B.F., Silberstein, A., Tam, E., Ramakrishnan, R., Sears, R.: Benchmarking cloud serving systems with YCSB. In: Proceedings of the 1st ACM Symposium on Cloud Computing, pp. 143–154. ACM (2010)Google Scholar
  13. 13.
    Danaher, P.J., Mullarkey, G.W., Essegaier, S.: Factors affecting web site visit duration: a cross-domain analysis. J. Market. Res. 43(2), 182–194 (2006)CrossRefGoogle Scholar
  14. 14.
    Elbushra, M.M., Lindström, J.: Eventual consistent databases: state of the art. Open J. Databases (OJDB) 1(1), 26–41 (2014)Google Scholar
  15. 15.
    Gilbert, S., Lynch, N.: Brewer’s conjecture and the feasibility of consistent, available, partition-tolerant web services. ACM SIGACT News 33(2), 51–59 (2002)CrossRefGoogle Scholar
  16. 16.
    Golubchik, L., Thomasian, A.: Token allocation in distributed systems. In: Proceedings of the 12th International Conference on Distributed Computing Systems, pp. 64–71. IEEE (1992)Google Scholar
  17. 17.
    Gray, J.N.: Notes on data base operating systems. In: Bayer, R., Graham, R.M., Seegmüller, G. (eds.) Operating Systems. LNCS, vol. 60, pp. 393–481. Springer, Heidelberg (1978). Scholar
  18. 18.
    Herlihy, M.: Concurrency versus availability: atomicity mechanisms for replicated data. ACM Trans. Comput. Syst. (TOCS) 5(3), 249–274 (1987)CrossRefGoogle Scholar
  19. 19.
    Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. (TOPLAS) 12(3), 463–492 (1990)Google Scholar
  20. 20.
    Hewitt, C., Bishop, P., Steiger, R.: A universal modular actor formalism for artificial intelligence. In: Proceedings of the 3rd International Joint Conference on Artificial Intelligence, pp. 235–245. Morgan Kaufmann Publishers Inc. (1973)Google Scholar
  21. 21.
    Ivica, S.B., Aleksandar, M.R., Radomir, M.A.: Crypto-currency and e-financials. J. Econ. Law 132 (2014)Google Scholar
  22. 22.
    Jansen, B.J., Spink, A.: An analysis of web documents retrieved and viewed. In: International Conference on Internet Computing, pp. 65–69. Citeseer (2003)Google Scholar
  23. 23.
    Krishnakumar, N., Bernstein, A.J.: High throughput escrow algorithms for replicated databases. In: VLDB, vol. 1992, pp. 175–186 (1992)Google Scholar
  24. 24.
    Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. (TOCS) 16(2), 133–169 (1998)CrossRefGoogle Scholar
  25. 25.
    Mahajan, P., Alvisi, L., Dahlin, M.: Consistency, availability, and convergence. University of Texas at Austin Technical report, 11 (2011)Google Scholar
  26. 26.
    Nah, F.F.-H.: A study on tolerable waiting time: how long are web users willing to wait? Behav. Inf. Technol. 23(3), 153–163 (2004)CrossRefGoogle Scholar
  27. 27.
    O’Neil, P.E.: The Escrow transactional model. ACM Trans. Database Syst. 4(11), 405–430 (1986)CrossRefGoogle Scholar
  28. 28.
    Radev, R.: Representing a relational database as a directed graph and some applications. In: Balkan Conference in Informatics, p. 1 (2013)Google Scholar
  29. 29.
    Soparkar, N., Silberschatz, A.: Data-valued partitioning and virtual messages. In: Proceedings of the Ninth ACM Symposium on Principles of Database Systems, pp. 357–367. ACM (1990)Google Scholar
  30. 30.
    Takaishi, M., Leguizamo, C.P., Kimura, S., Takanuki, R.: Autonomous multi-agent-based data allocation technology in decentralized database systems for timeliness. In: Proceedings of Autonomous Decentralized Systems, ISADS 2005, pp. 25–32. IEEE (2005)Google Scholar
  31. 31.
    Vogels, W.: Eventually consistent. Commun. ACM 52(1), 40–44 (2009)CrossRefGoogle Scholar
  32. 32.
    Zona, R.: The economic impacts of unacceptable web site download speeds. Technical report, Research report (1999).

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Carl Camilleri
    • 1
    Email author
  • Joseph G. Vella
    • 1
  • Vitezslav Nezval
    • 1
  1. 1.Department of Computer Information SystemsUniversity of MaltaMsidaMalta

Personalised recommendations