Journal of Grid Computing

, Volume 12, Issue 1, pp 67–91 | Cite as

ServiceSs: An Interoperable Programming Framework for the Cloud

  • Francesc Lordan
  • Enric Tejedor
  • Jorge Ejarque
  • Roger Rafanell
  • Javier Álvarez
  • Fabrizio Marozzo
  • Daniele Lezzi
  • Raül Sirvent
  • Domenico Talia
  • Rosa M. Badia


The rise of virtualized and distributed infrastructures has led to new challenges to accomplish the effective use of compute resources through the design and orchestration of distributed applications. As legacy, monolithic applications are replaced with service-oriented applications, questions arise about the steps to be taken in order to maximize the usefulness of the infrastructures and to provide users with tools for the development and execution of distributed applications. One of the issues to be solved is the existence of multiple cloud solutions that are not interoperable, which forces the user to be locked to a specific provider or to continuously adapt applications. With the objective of simplifying the programmers challenges, ServiceSs provides a straightforward programming model and an execution framework that helps on abstracting applications from the actual execution environment. This paper presents how ServiceSs transparently interoperates with multiple providers implementing the appropriate interfaces to execute scientific applications on federated clouds.


Cloud computing Programming models Interoperability Standards 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Amazon Elastic Compute Cloud (EC2). Last visited on 16 Apr 2013
  2. 2.
    Amazon elastic map reduce. Last visited on 31 Aug 2013
  3. 3.
    Apache cloudstack. Last visited on 31 Aug 2013
  4. 4.
    Apache Tomcat. Last visited on 31 Aug 2013
  5. 5.
    Eclipse: The eclipse foundation open source community website. Last visited on 31 Aug 2013
  6. 6.
    Egi-inspire white paper. Last visited on 16 Apr 2013
  7. 7.
    Flexiscale. Last visited on 31 Aug 2013
  8. 8.
    Foster, I. et al.: OGSA Basic Execution Service Version 1.0. Grid Forum Document GFD-RP. 108. 11/13/2008. Last visited on 31 Aug 2013
  9. 9.
    GoGrid cloud hosting.
  10. 10.
  11. 11.
  12. 12.
    Java programming assistant (javassist). Last visited on 31 Aug 2013
  13. 13.
    JavaGAT. Last visited on 31 Aug 2013
  14. 14.
  15. 15.
    OASIS Web Services Business Process Execution Language.
  16. 16.
    Open Cloud Computing Interface. Last visited on 16 Apr 2013
  17. 17.
    Open VPN. Last visited on 31 Aug 2013
  18. 18.
    Ovf4one. Last visited on 16 Apr 2013
  19. 19.
    Project daytona. Last visited on 16 Apr 2013
  20. 20.
    The HPC Basic profile specification. Last visited on 16 Apr 2013
  21. 21.
    Us forest service (usfs) cover type. Last visited on 16 Apr 2013
  22. 22.
    Virtual multidisciplinary ENvironments USing Cloud infrastructures Project. Last visited on 31 Aug 2013
  23. 23.
    Amedro, B., Baude, F., Caromel, D., Delbe, C., Filali, I., Huet, F., Mathias, E., Smirnov, O.: An efficient framework for running applications on clusters, Grids and clouds. In: Cloud Computing: Principales, Systems and Applications. Springer Verlag (2010)Google Scholar
  24. 24.
    Anjomshoaa, A., Brisard, F., Drescher, M., Fellows, D., Ly, A., Mcgough, S., Pulsipher, D., Savva, A.: Job Submission Description Language (JSDL) specification, version 1.0. Technical report, Global Grid Forum (2005)Google Scholar
  25. 25.
    Bal, H.E., Maassen, J., van Nieuwpoort, R.V., Drost, N., Kemp, R., van Kessel, T., Palmer, N., Wrzesińska, G., Kielmann, T., van Reeuwijk, K., Seinstra, F.J., Jacobs, C.J.H., Verstoep, K.: Real-world distributed computer with ibis. IEEE Computer 43(8), 54–62 (2010)CrossRefGoogle Scholar
  26. 26.
    Berriman, G.B., Deelman, E., Juve, G., Rynge, M., Vöckler, J.-S.: The application of cloud computing to scientific workflows: a study of cost and performance. Phys. Eng. Sci. 371(1983) (2013). doi: 10.1098/rsta.2012.0066 Google Scholar
  27. 27.
    Borthakur, D.: The Hadoop Distributed File System: Architecture and Design. The Apache Software Foundation (2007)Google Scholar
  28. 28.
    Bresnahan, J., Keahey, K., Wilde, M.: Nimbus platform: Managing deployments in multi-cloud environments. Science Cloud Summer School 2012, 07/2012 (2012)Google Scholar
  29. 29.
    Ferrer, A.J., Hernández, F., Tordsson, J., Elmroth, E., Ali-Eldin, A., Zsigri, C., Sirvent, R., Guitart, J., Badia, R.M., Djemame, K., Ziegler, W., Dimitrakos, T., Nair, S.K., Kousiouris, G., Konstanteli, K., Varvarigou, T., Hudzia, B., Kipp, A., Wesner, S., Corrales, M., Forgó, N., Sharif, T., Sheridan, C.: OPTIMIS: a holistic approach to cloud service provisioning. Futur. Gener. Comput. Syst. 28(1), 66–77 (2012)CrossRefGoogle Scholar
  30. 30.
    Giménez, J., Labarta, J., Pegenaute, F.X., Wen, H.-F., Klepacki, D., Chung, I.-H., Cong, G., Voigtländer, F., Mohr, B.: Guided performance analysis combining profile and trace tools. In: Proceedings of the 2010 Conference on Parallel processing, Euro-Par 2010, pp. 513–521. Springer-Verlag, Berlin, Heidelberg (2011)Google Scholar
  31. 31.
    Goiri, Í., Guitart, J., Torres, J.: Elastic management of tasks in virtualized environments. In: Proceedings of the XX Jornadas de Paralelismo (JP 2009), A Coruña, pp. 671–676. Spain, 16–18 Sept 2009Google Scholar
  32. 32.
    Goodale, T., Jha, S., Kaiser, H., Kielmann, T., Kleijer, P., von Laszewski, G., Lee, C., Merzky, A., Rajic, H., Shalf, J.: SAGA: A Simple API for Grid applications, High-Level Application Programming on the Grid. Computational Methods in Science and Technology (CMST) 12(1), 7–20 (2006)Google Scholar
  33. 33.
    Gunarathne, T., Zhang, B., Wu, T.-L., Qiu, J.: Scalable parallel computing on clouds using twister4azure iterative mapreduce. Futur. Gener. Comput. Syst. 29(4), 1035–1048 (2013) <ce:title>Special Section: Utility and Cloud Computing</ce:title>.CrossRefGoogle Scholar
  34. 34.
    Hategan, M., Wozniak, J., Maheshwari, K.: Coasters: uniform resource provisioning and access for clouds and Grids. In: Proceedings of the 2011 Fourth IEEE International Conference on Utility and Cloud Computing, UCC ’11, pp. 114–121. IEEE Computer Society, Washington, DC (2011)CrossRefGoogle Scholar
  35. 35.
    Hennessy, J.L., Patterson, D.A., Goldberg, D.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann (2002)Google Scholar
  36. 36.
    Isard, M., Budiu, M., Yu, Y., Birrell, A., Fetterly, D.: Dryad: distributed data-parallel programs from sequential building blocks. In: Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007, EuroSys ’07, pp. 59–72. ACM, New York, NY (2007)CrossRefGoogle Scholar
  37. 37.
    Lezzi, D., Memon, S., Rafanell, R., Soncu, H., Riedel, M., Badia, R.M.: Interoperable execution of escience applications on Grids & clouds through open standards. In: Proceedings of the Unicore Summit 2012, IAS. Forschungszentrum Jülich GmbH (2012)Google Scholar
  38. 38.
    Lezzi, D., Rafanell, R., Carrión, A., Espert, I.B., Hernández, V., Badia, R.M.: Enabling e-science applications on the cloud with compss. In: Proceedings of the 2011 International Conference on Parallel Processing, Euro-Par’11, pp. 25–34. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  39. 39.
    Lezzi, D., Rafanell, R., Torser, E., De Giovanni, R., Blanquer, I., Badia, R.M.: Programming ecological niche modeling workflows in the cloud. In: The 27th IEEE International Conference on Advanced Information Networking and Applications (AINA-2013). BARCELONA, Spain (2013)Google Scholar
  40. 40.
    Livenson, I., Laure, E.: Towards transparent integration of heterogeneous cloud storage platforms. In: Proceedings of the Fourth International Workshop on Data-intensive Distributed Computing, DIDC ’11, pp. 27–34. ACM, New York, NY (2011)CrossRefGoogle Scholar
  41. 41.
    Luckow, A., Lacinski, L., Jha, S.: Saga bigjob: An extensible and interoperable pilot-job abstraction for distributed applications and systems. In: 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing (CCGrid), 2010, pp. 135–144 (2010)Google Scholar
  42. 42.
    Mach, R., Lepro-Metz, R., Jackson, S., McGinnis, L.: Usage record format recommendation gfd-rp. 098. In: Open Grid Forum Recommendation (2007)Google Scholar
  43. 43.
    Marozzo, F., Lordan, F., Rafanell, R., Lezzi, D., Talia, D., Badia, R.M.: Enabling cloud interoperability with compss. In: Kaklamanis, C., Papatheodorou, T.S., Spirakis, P.G. (eds.) Euro-Par. Lecture Notes in Computer Science, vol. 7484, pp. 16–27. Springer (2012)Google Scholar
  44. 44.
    Martino, B., Petcu, D., Cossu, R., Goncalves, P., Mhr, T., Loichate, M.: Building a mosaic of clouds. In: Guarracino, M., Vivien, F., Trff, J., Cannatoro, M., Danelutto, M., Hast, A., Perla, F., Knpfer, A., Martino, B., Alexander, M. (eds.) Euro-Par 2010 Parallel Processing Workshops. Lecture Notes in Computer Science, vol. 6586, pp. 571–578. Springer, Berlin Heidelberg (2011)CrossRefGoogle Scholar
  45. 45.
    Mattess, M., Calheiros, R.N., Buyya, R.: Scaling mapreduce applications across hybrid clouds to meet soft deadlines. In: Proceedings of the 27th IEEE International Conference on Advanced Information Networking and Applications (AINA), 2013. Barcelona, Spain (2013)Google Scholar
  46. 46.
    Missier, P., Soiland-Reyes, S., Owen, S., Tan, W., Nenadic, A., Dunlop, I., Williams, A., Oinn, T., Goble, C.: Taverna, reloaded. In: Gertz, M., Hey, T., Ludaescher, B. (eds.) SSDBM 2010. Heidelberg, Germany (2010)Google Scholar
  47. 47.
    Montesi, F., Guidi, C., Zavattaro, G.: Composing services with jolie. In: Fifth European Conference on Web Services, 2007. ECOWS ’07, pp. 13–22 (2007)Google Scholar
  48. 48.
    Nurmi, D., Wolski, R., Grzegorczyk, C., Obertelli, G., Soman, S., Youseff, L., Zagorodnov, D.: The eucalyptus open-source cloud-computing system. In: Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid, CCGRID ’09, pp. 124–131. IEEE Computer Society, Washington, DC (2009)CrossRefGoogle Scholar
  49. 49.
    Oprescu, A.-M., Kielmann, T., Leahu, H.: Budget estimation and control for bag-of-tasks scheduling in clouds. Parallel Processing Letters (PPL) 21(2), 219–243 (2011)CrossRefMathSciNetGoogle Scholar
  50. 50.
    Pierre, G., Stratan, C.: ConPaaS: a platform for hosting elastic cloud applications. IEEE Internet Computing 16(5), 88–92 (2012)CrossRefGoogle Scholar
  51. 51.
    Sefraoui, O., Aissaoui, M., Eleuldj, M.: Article: Openstack: toward an open-source solution for cloud computing. Int. J. Comput. Appl. 55(3), 38–42 (2012) (Published by Foundation of Computer Science, New York, USA)Google Scholar
  52. 52.
    Simmhan, Y., van Ingen, C., Subramanian, G., Li, J.: Bridging the gap between desktop and the cloud for escience applications. In: Proceedings of the 2010 IEEE 3rd International Conference on Cloud Computing, CLOUD ’10, pp. 474–481. IEEE Computer Society, Washington, DC (2010)CrossRefGoogle Scholar
  53. 53.
    Sotomayor, B., Montero, R.S., Llorente, I.M., Foster, I.: Virtual infrastructure management in private and hybrid clouds. IEEE Internet Computing 13(5), 14–22 (2009)CrossRefGoogle Scholar
  54. 54.
    Tejedor, E., Badia, R.: Comp superscalar: bringing Grid superscalar and gcm together. In: 8th IEEE International Symposium on Cluster Computing and the Grid, 2008, CCGRID’08, pp. 185–193. IEEE (2008)Google Scholar
  55. 55.
    Tejedor, E., Ejarque, J., Lordan, F., Rafanell, R., Álvarez, J., Lezzi, D., Sirvent, R., Badia, R.M.: A Cloud-unaware programming model for easy development of composite services. In: Proceedings of the 3rd IEEE International Conference on Cloud Computing Technology and Science, CloudCom ’11. Athens, Greece (2011)Google Scholar
  56. 56.
    Wilde, M., Hategan, M., Wozniak, J.M., Clifford, B., Katz, D.S., Foster, I.: Swift: A language for distributed parallel scripting. Parallel Comput. 37(9), 633–652 (2011)CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2013

Authors and Affiliations

  • Francesc Lordan
    • 1
  • Enric Tejedor
    • 1
  • Jorge Ejarque
    • 1
  • Roger Rafanell
    • 1
  • Javier Álvarez
    • 1
  • Fabrizio Marozzo
    • 3
  • Daniele Lezzi
    • 1
  • Raül Sirvent
    • 1
  • Domenico Talia
    • 3
    • 4
  • Rosa M. Badia
    • 1
    • 2
  1. 1.Department of Computer SciencesBarcelona Supercomputing Center (BSC-CNS)BarcelonaSpain
  2. 2.Artificial Intelligence Research Institute (IIIA)Spanish Council for Scientific Research (CSIC)BarcelonaSpain
  3. 3.DIMESUniversity of CalabriaRendeItaly
  4. 4.ICAR-CNRRendeItaly

Personalised recommendations