Semantic Representation of Cloud Services: a Case
Study for Microsoft Windows Azure
Beniamino Di Martino, Giuseppina Cretella, Antonio Esposito and Raffaele Giulio Sperandeo
Department of Industrial and Information Engineering
Second University of Naples
Aversa, Italy
beniamino.dimartino@unina.it, giuseppina.cretella@unina2.it,
antonio.esposito@unina2.it, raffaelegiulio.sperandeo@studenti.unina2.it
Keywords—cloud computing; semantic web; semantic represen-
tation; ontology; cloud interoperability;
Abstract—Starting with the provision of ready-to-use in-
frastructures, such as storage and compute resources, cloud
computing quickly became a flexible, cost-effective and complete
environment for a wide range of IT services offered over the
Internet. A growing number of cloud providers started to expose
their own services to the market, to answer consumer’s need,
engaging a competition in the attempt to offer the easiest
access to resources and the wider catalogue of services. Being
integrated with proprietary services and infrastructures, these
offerings makes difficult to switch between different underlying
technologies, so that the customer is tied to the service provider’s
strategy. This lack in standards interfaces, service requirements
and technologies brings into the cloud the vendor lock-in problem.
Due to this complex scenery, a categorization of services to
support the choice of the right solution, as well as a semantic and
computable description of services that enables the comparison
and the mapping between different providers’ services, proves to
be extremely appealing. In an attempt to take a first important
step in this context we propose the semantic description of
some cloud services, exposing them in terms of functionalities,
parameters exchanged, and collaboration between services. In
particular in this paper we present the semantic representation
of Microsoft Windows Azure APIs, describing functional and
non-functional properties of the services.
I. I NTRODUCTION
It is quite difficult to find a single complete definition of
cloud computing. Most of them, however, describe cloud com-
puting as the dynamic provisioning of IT resources throughout
the Internet, pointing out the following characteristic: on-
demand approach, elasticity, resource metering, pay-per-use.
Application in cloud computing are built through cloud APIs
(Application Programming Interfaces), allowing services ac-
cess and deployment. Vendors provide their own APIs and
interface to access the services they offer in the cloud. The
lack of a common API prevents first of all the interoperability
between services from different providers, and also locks the
cloud user in a provider specific solution. The adoption of
cloud solutions from some enterprises is still under discussion
because applications built around cloud APIs are costly to
construct and to change and there is currently no good path
to cloud portability to protect the investment in development.
Some steps in the scope of avoiding this vendor lock-in have
been taken with the introduction of cross-platform APIs such
as Delta cloud [1] and mOSAIC API [2]. A cross-platform
API provides a higher level of abstraction than cloud provider
based API by taking cloud provider specific cloud API calls
and making them generic. The benefits of using a cross-
platform based cloud API is the ability to use a single API
call, to access or leverage cloud resources on more than one
provider’s cloud computing platform. This saves a considerable
amount of time, reduces complexity of the code rather than
implementing multiple cloud provider based cloud APIs but
also in this case the user is limited to the cloud platforms
supported by the cross-platform API and remains locked in it
if the adopted solution is not a standard. On the other hand
building services upon reliable standard is a road slowly being
undertaken from more and more providers. The application
of semantic web technology and meta-data can be applied to
cloud computing and can bring advantages at different levels,
within and across cloud platform. For example it can provide
a machine processable meaning of cloud-based resources and
cloud services, enabling automated evaluation, navigation and
consumption of clouds and cloud-based resources. In this con-
text exploiting the powerful expressiveness of Web Semantic
languages, such as OWL-S [3], to represent cloud services
might open new horizons in the cloud services discovery and
composition. Building a semantic description of the services
makes them linked to abstract and cross-platform concepts,
but enables the possibility to reconcile and match different
semantic representations and then the mapping between dif-
ferent cloud providers’ services. Previous investigations on
the application of semantic technologies in cloud computing
have been done within the mOSAIC project [2]. This work
represents an enrichment and reinforcement of the knowledge
base of two mOSAIC components, the Semantic Engine [4]
and the Dynamic Discovery Service [5]. The Semantic Engine
introduces a high level of abstraction over the cloud APIs and
cloud resources, by providing semantic based representation
of abstract functionalities and resources, related by properties
and constraints, and Application domain level concepts and
application patterns. Inference rules representing developer
experts’ knowledge and reasoners are used to support the
cloud application developer in the tasks of discovering the
needed functionalities and resources for application devel-
opment through vendor independent representations of such
application components, and representation of generic pro-
gramming concepts and patterns, including application domain
related ones. The Dynamic Discovery Service target is to dis-
cover Cloud providers functionalities and resources, compare
and align to other provider or agnostic API, thus supporting
2014 International Conference on Intelligent Networking and Collaborative Systems
978-1-4799-6387-4/14 $31.00 © 2014 IEEE
DOI 10.1109/INCoS.2014.76
647