Skip to main content
Log in

ServiceSs: An Interoperable Programming Framework for the Cloud

  • Published:
Journal of Grid Computing Aims and scope Submit manuscript

Abstract

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.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Amazon Elastic Compute Cloud (EC2). http://aws.amazon.com/ec2/. Last visited on 16 Apr 2013

  2. Amazon elastic map reduce. http://aws.amazon.com/documentation/elasticmapreduce/. Last visited on 31 Aug 2013

  3. Apache cloudstack. http://cloudstack.apache.org. Last visited on 31 Aug 2013

  4. Apache Tomcat. http://tomcat.apache.org/. Last visited on 31 Aug 2013

  5. Eclipse: The eclipse foundation open source community website. http://www.eclipse.org/. Last visited on 31 Aug 2013

  6. Egi-inspire white paper. http://go.egi.eu/pdnon. Last visited on 16 Apr 2013

  7. Flexiscale. http://www.flexiscale.com. Last visited on 31 Aug 2013

  8. Foster, I. et al.: OGSA Basic Execution Service Version 1.0. Grid Forum Document GFD-RP. 108. 11/13/2008. http://www.ogf.org/documents/GFD.108.pdf. Last visited on 31 Aug 2013

  9. GoGrid cloud hosting. http://www.goGrid.com

  10. Google App Engine. http://code.google.com/appengine

  11. Java annotations. http://java.sun.com/j2se/1.5.0/docs/guide/language/annotations.html

  12. Java programming assistant (javassist). http://www.javassist.org. Last visited on 31 Aug 2013

  13. JavaGAT. http://www.cs.vu.nl/ibis/javagat.html. Last visited on 31 Aug 2013

  14. Microsoft Azure. http://www.microsoft.com/azure

  15. OASIS Web Services Business Process Execution Language. http://www.oasis-open.org/committees/wsbpel/

  16. Open Cloud Computing Interface. http://occi-wg.org. Last visited on 16 Apr 2013

  17. Open VPN. http://openvpn.net/. Last visited on 31 Aug 2013

  18. Ovf4one. http://occi-wg.org/2012/05/03/occi-and-ovf/. Last visited on 16 Apr 2013

  19. Project daytona. http://research.microsoft.com/en-us/projects/daytona. Last visited on 16 Apr 2013

  20. The HPC Basic profile specification. http://www.ogf.org/documents/GFD.114.pdf. Last visited on 16 Apr 2013

  21. Us forest service (usfs) cover type. http://kdd.ics.uci.edu/databases/covertype/covertype.html. Last visited on 16 Apr 2013

  22. Virtual multidisciplinary ENvironments USing Cloud infrastructures Project. http://www.venus-c.eu. Last visited on 31 Aug 2013

  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)

  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)

  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)

    Article  Google Scholar 

  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. Borthakur, D.: The Hadoop Distributed File System: Architecture and Design. The Apache Software Foundation (2007)

  28. Bresnahan, J., Keahey, K., Wilde, M.: Nimbus platform: Managing deployments in multi-cloud environments. Science Cloud Summer School 2012, 07/2012 (2012)

  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)

    Article  Google Scholar 

  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. 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 2009

  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. 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>.

    Article  Google Scholar 

  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)

    Chapter  Google Scholar 

  35. Hennessy, J.L., Patterson, D.A., Goldberg, D.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann (2002)

  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)

    Chapter  Google Scholar 

  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)

  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)

    Chapter  Google Scholar 

  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)

  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)

    Chapter  Google Scholar 

  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)

  42. Mach, R., Lepro-Metz, R., Jackson, S., McGinnis, L.: Usage record format recommendation gfd-rp. 098. In: Open Grid Forum Recommendation (2007)

  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)

  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)

    Chapter  Google Scholar 

  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)

  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)

  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)

  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)

    Chapter  Google Scholar 

  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)

    Article  MathSciNet  Google Scholar 

  50. Pierre, G., Stratan, C.: ConPaaS: a platform for hosting elastic cloud applications. IEEE Internet Computing 16(5), 88–92 (2012)

    Article  Google Scholar 

  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. 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)

    Chapter  Google Scholar 

  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)

    Article  Google Scholar 

  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)

  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)

  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)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Daniele Lezzi.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lordan, F., Tejedor, E., Ejarque, J. et al. ServiceSs: An Interoperable Programming Framework for the Cloud. J Grid Computing 12, 67–91 (2014). https://doi.org/10.1007/s10723-013-9272-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10723-013-9272-5

Keywords

Navigation