Abstract
Interoperability and easier migration between offered serviced are aims that can be supported by cloud service brokerage in the cloud service ecosystem. We present here a multi-cloud storage broker, implemented as an API. This API allows objects and collections of objects to be stored and retrieved uniformly across a range of cloud-based storage providers. This in turn realizes improved portability and easy migration of software systems between providers and services.
Our multi-cloud storage abstraction is implemented as a Java-based multi-cloud storage API and supports a range of storage providers including GoogleDrive, DropBox, Microsoft Azure and Amazon Web Services as sample service providers. We focus on the architectural aspects of the broker in this paper. The abstraction provided by the broker is based on a layered ontological framework. While many multi-cloud applications exist, we investigate in more detail the mapping of the layered ontology onto a design pattern-based organisation of the architecture. This software architecture perspective allows us to show how this satisfies important maintainability and extensibility properties for any software system.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ried, S.: Cloud Broker – A New Business Model Paradigm. Forrester, Cambridge (2011)
Benslimane, D., Dustdar, S., Sheth, A.: Services mashups – the new generation of web applications. Internet Comput. 12(5), 13–15 (2008)
Bernstein, D., Ludvigson, E., Sankar, K., Diamond, S., Morrow, M.: Blueprint for the inter-cloud: protocols and formats for cloud computing interoperability. In: International Conference on Internet and Web Applications and Services (2009)
Buyya, R., Ranjan, R., Calheiros, R.N.: InterCloud: utility-oriented federation of cloud computing environments for scaling of application services. In: Hsu, C.-H., Yang, L.T., Park, J.H., Yeo, S.-S. (eds.) ICA3PP 2010. LNCS, vol. 6081, pp. 13–31. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13119-6_2
Elango, D.M., Fowley, F., Pahl, C.: Testing and comparing the performance of cloud service providers using a service broker architecture. In: Mann, Z.Á., Stolz, V. (eds.) ESOCC 2017. CCIS, vol. 824, pp. 117–129. Springer, Cham (2018)
Cloud Standards (2017). http://cloud-standards.org/
ETSI Cloud Standards (2017). http://www.etsi.org/newsevents/news/734-2013-12-press-release-report-on-cloudcomputing-standards
Fehling, C., Mietzner, R.: Composite as a service: cloud application structures, provisioning, and management. Info. Technol. 53(4), 188–194 (2011)
Pahl, C., Jamshidi, P., Weyns, D.: Cloud architecture continuity: change models and change rules for sustainable cloud software architectures. J. Softw. Evol. Process 29, e1849 (2017). https://doi.org/10.1002/smr.1849
Pahl, C., Jamshidi, P., Zimmermann, O.: Architectural principles for cloud software. ACM Trans. Internet Technol. (2018, to appear)
Forrester Research: Cloud Brokers Will Reshape The Cloud (2012). http://www.cordys.com/ufc/file2/cordyscmssites/download/09b57cd3eb6474f1fda1cfd62ddf094d/pu/
Fowley, F., Pahl, C., Zhang, L.: A comparison framework and review of service brokerage solutions for cloud architectures. In: Lomuscio, A.R., Nepal, S., Patrizi, F., Benatallah, B., Brandić, I. (eds.) ICSOC 2013. LNCS, vol. 8377, pp. 137–149. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-06859-6_13
Fowley, F., Pahl, C., Jamshidi, P., Fang, D., Liu, X.: A classification and comparison framework for cloud service brokerage architectures. IEEE Trans. Cloud Comput. (2017). https://doi.org/10.1109/TCC.2016.2537333. http://ieeexplore.ieee.org/document/7423741/
Javed, M., Abgaz, Y.M., Pahl, C.: Ontology change management and identification of change patterns. J. Data Semant. 2(2–3), 119–143 (2013)
Garcia-Gomez, S., et al.: Challenges for the comprehensive management of cloud services in a PaaS framework. Scalable Comput. Pract. Exp. 13(3), 201–214 (2012)
Elango, D.M., Fowley, F., Pahl, C.: Using a cloud broker API to evaluate cloud service provider performance. Research report 471, Department of Informatics, University of Oslo, pp. 63–74 (2017)
Gartner: Cloud Services Brokerage. Gartner Research (2013). http://www.gartner.com/it-glossary/cloud-servicesbrokerage-csb
Grozev, N., Buyya, R.: InterCloud architectures and application brokering: taxonomy and survey. Softw. Pract. Exp. 44, 369–390 (2012)
Pahl, C., Jamshidi, P.: Microservices: a systematic mapping study. In: Proceedings CLOSER Conference, pp. 137–146 (2016)
Taibi, D., Lenarduzzi, V., Pahl, C.: Processes, motivations and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput. 4(5), 22–32 (2018). http://ieeexplore.ieee.org/document/8125558/
Hofer, C.N., Karagiannis, G.: Cloud computing services: taxonomy and comparison. J. Internet Serv. Appl. 2(2), 81–94 (2011)
Jamshidi, P., Sharifloo, A., Pahl, C., Arabnejad, H., Metzger, A., Estrada, G.: Fuzzy self-learning controllers for elasticity management in dynamic cloud architectures. In: 12th International ACM SIGSOFT Conference on Quality of Software Architectures QoSA (2016)
Arabnejad, H., Jamshidi, P., Estrada, G., El Ioini, N., Pahl, C.: An auto-scaling cloud controller using fuzzy Q-learning - implementation in openstack. In: Aiello, M., Johnsen, E.B., Dustdar, S., Georgievski, I. (eds.) ESOCC 2016. LNCS, vol. 9846, pp. 152–167. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-44482-6_10
Gacitua-Decar, V., Pahl, C.: Structural process pattern matching based on graph morphism detection. Int. J. Softw. Eng. Knowl. Eng. 27(2), 153–189 (2017)
IEEE Cloud Standards (2015). http://cloudcomputing.ieee.org/standards
Jamshidi, P., Ahmad, A., Pahl, C.: Cloud migration research: a systematic review. IEEE Trans. Cloud Comput. 1, 142–157 (2013)
jclouds: jclouds Java and Clojure Cloud API (2015). http://www.jclouds.org/
Ferrer, A.J., et al.: OPTIMIS: a holistic approach to cloud service provisioning. Future Gener. Comput. Syst. 28(1), 66–77 (2012)
Konstantinou, A.V., Eilam, T., Kalantar, M., Totok, A.A., Arnold, W., Sniblel, E.: An architecture for virtual solution composition and deployment in infrastructure clouds. In: International Workshop on Virtualization Technologies in Distributed Computing (2009)
Pahl, C.: Layered ontological modelling for web service-oriented model-driven architecture. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 88–102. Springer, Heidelberg (2005). https://doi.org/10.1007/11581741_8
Pahl, C., Giesecke, S., Hasselbring, W.: Ontology-based modelling of architectural styles. Inf. Softw. Technol. 51(12), 1739–1749 (2009)
Mietzner, R., Leymann, F., Papazoglou, M.: Defining composite configurable SaaS application packages using SCA Variability Descriptors and Multi-tenancy Patterns. In: International Conference on Internet and Web Applications and Services (2008)
Pahl, C., Xiong, H.: Migration to PaaS clouds - migration process and architectural concerns. In: IEEE 7th International Symposium on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems MESOCA (2013)
Pahl, C., Xiong, H., Walshe, R.: A comparison of on-premise to cloud migration approaches. In: Lau, K.-K., Lamersdorf, W., Pimentel, E. (eds.) ESOCC 2013. LNCS, vol. 8135, pp. 212–226. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40651-5_18
Papazoglou, M.P., van den Heuvel, W.J.: Blueprinting the cloud. IEEE Internet Comput. 15, 74–79 (2011)
Petcu, D., et al.: Portable cloud applications–from theory to practice. Future Gener. Comput. Syst. 29(6), 1417–1430 (2013)
Amazon Simple Storage Service (S3) Cloud Storage AWS https://aws.amazon.com/s3/
Dropbox. https://www.dropbox.com/
Azure Storage - Secure cloud storage. https://azure.microsoft.com/en-us/services/storage/
Google Drive - Cloud Storage & File Backup. https://www.google.com/drive/
Jamshidi, P., Pahl, C., Mendonca, N.C.: Pattern-based multi-cloud architecture migration. Softw. Pract. Exp. 47(9), 1159–1184 (2017)
Pahl, C., Brogi, A., Soldani, J., Jamshidi, P.: Cloud container technologies: a state-of-the-art review. IEEE Trans. Cloud Comput. (2017). https://doi.org/10.1109/TCC.2017.2702586. http://ieeexplore.ieee.org/document/7922500/
Aderaldo, C.M., Mendonca, N.C., Pahl, C., Jamshidi, P.: Benchmark requirements for microservices architecture research. In: 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering. IEEE (2017)
Heinrich, R., van Hoorn, A., Knoche, H., Li, F., Lwakatare, L.E., Pahl, C., Schulte, S., Wettinger, J.: Performance engineering for microservices: research challenges and directions. In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion (2017)
Acknowledgements
This work was partly supported by IC4 (Irish Centre for Cloud Computing and Commerce), funded by EI and the IDA.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Elango, D.M., Fowley, F., Pahl, C. (2018). An Ontology-Based Architecture for an Adaptable Cloud Storage Broker. In: Mann, Z., Stolz, V. (eds) Advances in Service-Oriented and Cloud Computing. ESOCC 2017. Communications in Computer and Information Science, vol 824. Springer, Cham. https://doi.org/10.1007/978-3-319-79090-9_6
Download citation
DOI: https://doi.org/10.1007/978-3-319-79090-9_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-79089-3
Online ISBN: 978-3-319-79090-9
eBook Packages: Computer ScienceComputer Science (R0)