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.
Similar content being viewed by others
References
Amazon Elastic Compute Cloud (EC2). http://aws.amazon.com/ec2/. Last visited on 16 Apr 2013
Amazon elastic map reduce. http://aws.amazon.com/documentation/elasticmapreduce/. Last visited on 31 Aug 2013
Apache cloudstack. http://cloudstack.apache.org. Last visited on 31 Aug 2013
Apache Tomcat. http://tomcat.apache.org/. Last visited on 31 Aug 2013
Eclipse: The eclipse foundation open source community website. http://www.eclipse.org/. Last visited on 31 Aug 2013
Egi-inspire white paper. http://go.egi.eu/pdnon. Last visited on 16 Apr 2013
Flexiscale. http://www.flexiscale.com. Last visited on 31 Aug 2013
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
GoGrid cloud hosting. http://www.goGrid.com
Google App Engine. http://code.google.com/appengine
Java annotations. http://java.sun.com/j2se/1.5.0/docs/guide/language/annotations.html
Java programming assistant (javassist). http://www.javassist.org. Last visited on 31 Aug 2013
JavaGAT. http://www.cs.vu.nl/ibis/javagat.html. Last visited on 31 Aug 2013
Microsoft Azure. http://www.microsoft.com/azure
OASIS Web Services Business Process Execution Language. http://www.oasis-open.org/committees/wsbpel/
Open Cloud Computing Interface. http://occi-wg.org. Last visited on 16 Apr 2013
Open VPN. http://openvpn.net/. Last visited on 31 Aug 2013
Ovf4one. http://occi-wg.org/2012/05/03/occi-and-ovf/. Last visited on 16 Apr 2013
Project daytona. http://research.microsoft.com/en-us/projects/daytona. Last visited on 16 Apr 2013
The HPC Basic profile specification. http://www.ogf.org/documents/GFD.114.pdf. Last visited on 16 Apr 2013
Us forest service (usfs) cover type. http://kdd.ics.uci.edu/databases/covertype/covertype.html. Last visited on 16 Apr 2013
Virtual multidisciplinary ENvironments USing Cloud infrastructures Project. http://www.venus-c.eu. Last visited on 31 Aug 2013
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)
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)
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)
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
Borthakur, D.: The Hadoop Distributed File System: Architecture and Design. The Apache Software Foundation (2007)
Bresnahan, J., Keahey, K., Wilde, M.: Nimbus platform: Managing deployments in multi-cloud environments. Science Cloud Summer School 2012, 07/2012 (2012)
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)
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)
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
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)
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>.
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)
Hennessy, J.L., Patterson, D.A., Goldberg, D.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann (2002)
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)
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)
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)
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)
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)
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)
Mach, R., Lepro-Metz, R., Jackson, S., McGinnis, L.: Usage record format recommendation gfd-rp. 098. In: Open Grid Forum Recommendation (2007)
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)
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)
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)
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)
Montesi, F., Guidi, C., Zavattaro, G.: Composing services with jolie. In: Fifth European Conference on Web Services, 2007. ECOWS ’07, pp. 13–22 (2007)
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)
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)
Pierre, G., Stratan, C.: ConPaaS: a platform for hosting elastic cloud applications. IEEE Internet Computing 16(5), 88–92 (2012)
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)
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)
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)
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)
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)
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)
Author information
Authors and Affiliations
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10723-013-9272-5