Advertisement

Towards the Integration of Distributed Transactional Memories in Application Servers’ Clusters

  • Paolo Romano
  • Nuno Carvalho
  • Maria Couceiro
  • Luís Rodrigues
  • João Cachopo
Part of the Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering book series (LNICST, volume 22)

Abstract

The transition to multicore architectures has raised the urge to identify novel programming paradigms aimed at simplifying the development of parallel programs.

Transactional Memories (TM) are regarded as one of the most promising approaches to address this issue, as highlighted by the huge interest garnered in the research community over the last years. Distributed Transactional Memories (DTMs) represent a very recent branching of the research line on TMs, aimed at enhancing their scalability and dependability.

In this paper, we review some of our recent results and research directions focused on the integration of DTMs in clusters of web application servers and on the design of scalable and fault-tolerant DTM algorithms.

Keywords

Bloom Filter Transactional Memory Distribute Share Memory Very Large Data Base Software Transactional Memory 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Adl-Tabatabai, A.-R., Kozyrakis, C., Saha, B.: Unlocking concurrency. ACM Queue 4(10), 24–33 (2007)CrossRefGoogle Scholar
  2. 2.
    Amza, C., Cox, A.L., Zwaenepoel, W.: Data replication strategies for fault tolerance and availability on commodity clusters. In: Proc. of the Conference on Dependable Systems and Networks (DSN), pp. 459–472 (2000)Google Scholar
  3. 3.
    Bernstein, P.A., Hadzilacos, V., Goodman, N.: Concurrency Control and Recovery in Database Systems. Addison-Wesley, Reading (1987)Google Scholar
  4. 4.
    Bocchino, R.L., Adve, V.S., Chamberlain, B.L.: Software transactional memory for large scale clusters. In: Proc. of the Symposium on Principles and Practice of Parallel Programming (PPOPP), pp. 247–258. ACM, New York (2008)Google Scholar
  5. 5.
    Broder, A., Mitzenmacher, M.: Network Applications of Bloom Filters: A Survey. Internet Mathematics 1(4), 485–509 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Cachopo, J., Rito-Silva, A.: Combining software transactional memory with a domain modeling language to simplify web application development. In: Prof. of the International Conference on Web Engineering (ICWE), pp. 297–304 (2006)Google Scholar
  7. 7.
    Cachopo, J., Rito-Silva, A.: Versioned boxes as the basis for memory transactions. Sci. Comput. Program. 63(2), 172–185 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Cardellini, V., Casalicchio, E., Colajanni, M., Yu, P.S.: The state of the art in locally distributed web-server systems. ACM Comput. Surv. 34(2), 263–311 (2002)CrossRefGoogle Scholar
  9. 9.
    Carvalho, N., Cachopo, J., Rodrigues, L., Rito Silva, A.: Versioned Transactional Shared Memory for the FenixEDU Web Application. In: Proc. of the Workshop on Dependable Distributed Data Management (WDDDM). ACM, New York (2008)Google Scholar
  10. 10.
    Carvalho, N., Pereira, J., Rodrigues, L.: Towards a generic group communication service. In: Proc. of the International Symposium on Distributed Objects and Applications, DOA (2006)Google Scholar
  11. 11.
    Cattell, R.G.G., Barry, D.K., Berler, M., Eastman, J., Jordan, D., Russell, C., Schadow, O., Stanienda, T., Velez, F. (eds.): The Object Data Standard – ODMG 3.0. Morgan Kaufmann Publishers, Inc, Los Altos (2000)Google Scholar
  12. 12.
    Couceiro, M., Romano, P., Carvalho, N., Rodrigues, L.: D2STM: Dependable Distributed Software Transactional Memory. In: Proc. of the Pacific Rim International Symposium on Dependable Computing (PRDC). IEEE Computer Society Press, Los Alamitos (2009)Google Scholar
  13. 13.
    Defago, X., Schiper, A., Urban, P.: Total order broadcast and multicast algorithms: Taxonomy and survey. ACM Computing Surveys 36(4), 372–421 (2004)CrossRefGoogle Scholar
  14. 14.
    Frølund, S., Guerraoui, R.: e-Transactions: End-to-end reliability for three-tier architectures. IEEE Transaction on Software Engineering 28(4), 378–395 (2002)CrossRefGoogle Scholar
  15. 15.
    Garbatov, S., Cachopo, J., Pereira, J.: Data access pattern analysis based on bayesian updating. In: Proc. of the 1st Simpósio de Informática (INForum), Lisbon, Portugal (September 2009)Google Scholar
  16. 16.
    Gray, J., Helland, P., O’Neil, P., Shasha, D.: The dangers of replication and a solution. In: Proc. of the Conference on the Management of Data (SIGMOD), pp. 173–182. ACM, New York (1996)Google Scholar
  17. 17.
    Guerraoui, R., Kapalka, M., Vitek, J.: STMBench7: a benchmark for software transactional memory. SIGOPS Oper. Syst. Rev. 41(3), 315–324 (2007)CrossRefGoogle Scholar
  18. 18.
    Guerraoui, R., Levy, R.R., Pochon, B., Quema, V.: High throughput total order broadcast for cluster environments. In: Proc. of the International Conference on Dependable Systems and Networks, pp. 549–557. IEEE Computer Society, Los Alamitos (2006)CrossRefGoogle Scholar
  19. 19.
    Guerraoui, R., Rodrigues, L.: Introduction to Reliable Distributed Programming. Springer, Heidelberg (2006)zbMATHGoogle Scholar
  20. 20.
    Kaashoek, M., Tanenbaum, A.: An evaluation of the Amoeba group communication system. In: Proce. of the International Conference on Distributed Computing Systems (ICDCS), p. 436. IEEE Computer Society, Los Alamitos (1996)CrossRefGoogle Scholar
  21. 21.
    Keleher, P., Cox, A.L., Zwaenepoel, W.: Lazy release consistency for software distributed shared memory. In: Proc. of the International Symposium on Computer Architecture (ISCA), pp. 13–21. ACM, New York (1992)Google Scholar
  22. 22.
    Kemme, B., Pedone, F., Alonso, G., Schiper, A.: Processing transactions over optimistic atomic broadcast protocols. In: Proc. of the International Conference on Distributed Computing Systems (ICDCS), p. 424. IEEE Computer Society, Los Alamitos (1999)Google Scholar
  23. 23.
    Kotselidis, C., Ansari, M., Jarvis, K., Lujan, M., Kirkham, C., Watson, I.: DiSTM: A software transactional memory framework for clusters. In: Proc. of the International Conference on Parallel Processing (ICPP), pp. 51–58 (2008)Google Scholar
  24. 24.
    Li, K., Hudak, P.: Memory coherence in shared virtual memory systems. In: Proc. of the Symposium on Principles of Distributed Computing (PODC), pp. 229–239. ACM, New York (1986)CrossRefGoogle Scholar
  25. 25.
    Miranda, H., Pinto, A., Rodrigues, L.: Appia, a flexible protocol kernel supporting multiple coordinated channels. In: Proc. International Conference on Distributed Computing Systems (ICDCS), pp. 707–710. IEEE, Los Alamitos (2001)CrossRefGoogle Scholar
  26. 26.
    OJB. Object/Relational Bridge - OJB (2007), http://db.apache.org/ojb
  27. 27.
    Patino-Martínez, M., Jiménez-Peris, R., Kemme, B., Alonso, G.: Scalable replication in database clusters. In: Herlihy, M.P. (ed.) DISC 2000. LNCS, vol. 1914, pp. 315–329. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  28. 28.
    Pedone, F., Guerraoui, R., Schiper, A.: The database state machine approach. Distributed and Parallel Databases 14(1), 71–98 (2003)CrossRefGoogle Scholar
  29. 29.
    Perez-Sorrosal, F., Patino-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)CrossRefGoogle Scholar
  30. 30.
    Rodrigues, L., Miranda, H., Almeida, R., Martins, J., Vicente, P.: The GlobData fault-tolerant replicated distributed object database. In: Shafazand, H., Tjoa, A.M. (eds.) EurAsia-ICT 2002. LNCS, vol. 2510, pp. 426–433. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  31. 31.
    Romano, P., Carvalho, N., Rodrigues, L.: Towards distributed software transactional memory systems. In: Proc. of the Workshop on Large-Scale Distributed Systems and Middleware, LADIS (2008)Google Scholar
  32. 32.
    Romano, P., Quaglia, F., Ciciani, B.: A lightweight and scalable e-Transaction protocol for three-tier systems with centralized back-end database. IEEE Transactions on Knowledge and Data Engineering 17(11), 1578–1583 (2005)CrossRefGoogle Scholar
  33. 33.
    Romano, P., Rodrigues, L., Carvalho, N.: The weak mutual exclusion problem. In: Proc. 23rd IEEE International Parallel and Distributed Processing Symposium. IEEE Computer Society Press, Los Alamitos (to appear)Google Scholar
  34. 34.
    Stonebraker, M., Madden, S., Abadi, D.J., Harizopoulos, S., Hachem, N., Helland, P.: The end of an architectural era: (it’s time for a complete rewrite). In: Proc. of the 33rd international conference on Very Large Data Bases (VLDB), pp. 1150–1160. VLDB Endowment (2007)Google Scholar
  35. 35.
    Terracotta Inc. Terracotta, http://www.terracotta.org/
  36. 36.
    Transaction Processing Performance Council. TPC BenchmarkTM W, Standard Specification, Version 1.8. Transaction Processing Perfomance Council (2002)Google Scholar
  37. 37.
    Transaction Processing Performance Council. TPC BenchmarkTM TPC-APP, Standard Specification, Version 1.0. Transaction Processing Perfomance Council (2004)Google Scholar

Copyright information

© ICST Institute for Computer Science, Social Informatics and Telecommunications Engineering 2009

Authors and Affiliations

  • Paolo Romano
    • 1
  • Nuno Carvalho
    • 1
  • Maria Couceiro
    • 1
  • Luís Rodrigues
    • 1
  • João Cachopo
    • 1
  1. 1.INESC-IDLisbonPortugal

Personalised recommendations