Difference between revisions of "Modeling for cloud part1"

From Knoesis wiki
Jump to: navigation, search
Line 2: Line 2:
 
<tr>
 
<tr>
 
<td width="650">
 
<td width="650">
−
<span style="font-size:28pt;color:purple">Semantic Modeling<br /><br />for Cloud Computing, Part 2</span><br /><br />
+
<span style="font-size:28pt;color:purple">Semantic Modeling<br /><br />for Cloud Computing, Part 1</span><br /><br />
 
Amit Sheth and Ajith Ranabahu • <i>Wright State University</i><br /><br />
 
Amit Sheth and Ajith Ranabahu • <i>Wright State University</i><br /><br />
 
<p style="float:left;width:300px">
 
<p style="float:left;width:300px">
−
Part 1 of this two-part article discussed
+
C
−
challenges related to cloud computing,
+
loud computing has lately become the
−
cloud interoperability, and multidimen-
+
attention grabber in both academia and  
−
sional analysis of cloud-modeling requirements
+
industry. The promise of seemingly unlim-
−
(see the May/June issue). Here, we look more
+
ited, readily available utility-type computing
−
specifically at areas in which semantic models
+
has opened many doors previously considered
−
can support cloud computing.<br /><br />
+
difficult, if not impossible, to open. The cloud-
−
<span style="font-size:12pt;color:purple">
+
computing landscape, however, is still evolving,
−
Opportunities for Semantic Models in Cloud Computing</span><br />
+
and we must overcome many challenges to fos-
−
Semantic models are helpful in three aspects of  
+
ter widespread adoption of clouds.
−
cloud computing.
+
The main challenge is interoperability.  
−
The first is functional and nonfunctional
+
Numerous vendors have introduced paradigms
−
definitions. The ability to define application
+
and services, making the cloud landscape
−
functionality and quality-of-service details in
+
diverse and heterogeneous. Just as in the com-
−
a platform-agnostic manner can immensely
+
puter hardware industry’s early days, when each
−
benefit the cloud community. This is particu-
+
vendor made and marketed its own version of
−
larly important for porting application code
+
(incompatible) computer equipment, clouds are  
−
horizontally—that is, across silos. Lightweight
+
diverse and vendor-locked. Although many
−
semantics, which we describe in detail later, are  
+
efforts are under way to standardize clouds’
−
particularly applicable.
+
important technical aspects, notably from the
−
The second aspect is data modeling. A crucial
+
US National Institute of Standards and Technol-
−
difficulty developers face is porting data hori-
+
ogy (NIST), consolidation and standardization
−
zontally across clouds. For example, moving data
+
are still far from reality. In this two-part article,
−
from a schema-less data store (such as Google
+
we discuss how a little bit of semantics can help
−
Bigtable1) to a schema-driven data store such
+
address clouds’ key interoperability and porta-
−
as a relational database presents a significant
+
bility issues.
−
challenge. For a good overview of this concern,
+
Cloud-Related Challenges
−
see the discussion of customer scenarios in the
+
Figure 1 shows the three main flavors of clouds
−
Cloud Computing User Cases White Paper (www.scribd.com/doc/18172802/Cloud-Computing-Use-Cases-Whitepaper). The root of this dif-
+
as outlined by NIST (http://csrc.nist.gov/groups/
−
ficulty is the lack of a platform-agnostic data
+
SNS/cloud-computing).  Infrastructure-as-a-­
−
model. Semantic modeling of data to provide a  
+
service (IaaS) clouds have the largest gap (a
−
platform-independent data representation would
+
high workload but little automation) in terms of  
−
be a major advantage in the cloud space.
+
deploying and managing an application.  Plat-
−
The third aspect is service description
+
form-as-a-service (PaaS) or software-as-a-service
−
enhancement. Clouds expose their operations
+
(SaaS) clouds have substantially lower workloads,
−
via Web services, but these service interfaces
+
but at the expense of flexibility and portability.
−
differ between vendors. The operations’ seman-</p>
+
Given this diverse environment, a cloud ser-
−
<p style="float:right;width:300px">tics, however, are similar. Metadata added
+
vice consumer faces four challenges.
−
through annotations pointing to generic opera-
+
First, depending on the application’s require-
−
tional models would play a key role in consoli-
+
ments, legal issues, and other possible consid-</p>
−
dating these APIs and enable interoperability
+
<p style="float:right;width:300px">erations, the consumer must select a cloud to  
−
among the heterogeneous cloud environments.<br /><br />
+
use. Each cloud vendor exposes these details in  
−
<span style="font-size:12pt;color:purple">Functional Portability</span><br />
+
different formats and at different granularity
−
From a perspective of the cloud landscape
+
levels.
−
based on the language abstraction and type
+
Second, the consumer must learn about the  
−
of semantics (that is, viewing the cube in Fig-
+
vendor’s technical aspects (service interface,
−
ure 1 from the top), we see that opportunities
+
scaling configuration, and so on) and workflow.
−
exist to use semantic models to define applica-
+
Third, the consumer must then develop an
−
tions’ functional aspects in a platform-agnostic
+
application or customize the vendor-provided
−
manner. In most cases, however, converting a
+
multitenant application to fulfill his or her
−
high-level model directly to executable arti-
+
requirements. When doing this, the consumer
−
facts pollutes both representations. Intermedi-
+
must take into account various technical details
−
ate representations are important to provide a
+
such as the choice of programming language
−
convenient conversion.
+
and limitations in the application runtime,
−
Applying high-level modeling to describe an
+
which will all be vendor-specific.
−
application’s functional aspects isn’t new. Many
+
Finally, after deploying the application, if
−
software development companies have been
+
the consumer must change the service provider
−
using UML to model application functionality
+
(which happens surprisingly often), at least two
−
at a high level and use artifacts derived from
+
major considerations arise. First, the consumer
−
these models to drive development. This process
+
might need to rewrite or modify the application
−
is commonly called model-driven development.
+
code to suit the new provider’s environment. For
−
This is an example of using high-level models to
+
some clouds (such as IaaS), this is minimal, but
−
derive fine-grain artifacts. UML models usually
+
porting the code in PaaS and SaaS clouds will
−
don’t include code, so you can use them only
+
likely require more effort.
−
to generate a skeletal application. That is, low-
+
The second consideration is that data col-
−
level details are deliberately kept away from the
+
lected for the application might need transfor-
−
high-level models.
+
mation. Data is the most important asset the
−
UML models, however, are inherently bound
+
application generates over time and is essential
−
with object-oriented languages, and UML-
+
for continued functioning. The transformation
−
driven development processes depend heavily
+
might even need to carry across different data
−
on advanced tools (for example, IBM’s Ratio-
+
models. The industry practice is to address such
−
nal Rose; www-01.ibm.com/software/awdtools/
+
transformations case-by-case.
−
developer/rose). This limits UML’s applicability.
+
To overcome these challenges and provide
−
A popular alternative to such tool-dependent
+
better insight into the aspects requiring atten-
−
heavy upfront models is domain-specific lan-
+
tion, proper modeling in this space is essential.  
−
guages (DSLs). Their popularity is due partly </p>
+
Semantic modeling can help with this.
 +
Cloud Interoperability?
 +
First, a word about cloud interoperability is in
 +
order. Interoperability requirements in the cloud </p>
 
</td></tr>
 
</td></tr>
 
<tr><td>
 
<tr><td>
−
<p style="float:left;width:250px">to the availability of extensible
+
<p style="float:left;width:200px">landscape in Figure 1 arise owing to  
−
interpreted programming languages
+
two types of heterogeneities.
−
such as Ruby and Python. Unlike
+
The first is vertical heterogene-
−
UML, a DSL is applicable only in a
+
ity—that is, within a single silo. We
−
given domain but enables a light-
+
can address this by using middle-
−
weight model in that domain, often
+
ware to homogenize the API and
−
without requiring proprietary tools.
+
sometimes by enforcing standardiza-
−
For example, you can use IBM’s
+
tion. For example, the Open Virtual-
−
Sharable Code DSL (http://services.alphaworks.ibm.com/isc), which is a
+
ization Format (OVF; www.dmtf.org/
−
mashup generator, with a basic text
+
vman) is an emerging standard that
−
editor. (However, providing graphical
+
allows migration of virtual-machine
−
abstractions and specialized tooling
+
snapshots across IaaS clouds.
−
would be more convenient for users.)
+
The second type is horizontal
−
“Lightweight” signifies that these
+
heterogeneity—that is, across silos.
−
models don’t use rich knowledge rep-
+
Overcoming this is fundamentally
−
resentation languages and so have
+
more difficult. Each silo provides
−
limited reasoning capabilities.
+
different abstraction levels and ser-
−
Our Cirrocumulus project for  
+
vices. High-level modeling pays off,
−
cloud interoperability (http://knoesis.org/research/srl/projects/cirrocumulus) uses DSLs to bridge the
+
especially when you must move an
−
gap between executable artifacts
+
application and code horizontally
−
and high-level semantic models. A
+
across these silos.
−
DSL, although domain specific, can
+
Surprisingly, many small and
−
provide a more programmer-oriented
+
medium businesses make horizontal
−
representation of functional, non-
+
transitions. PaaS clouds offer faster
−
functional, or even data descriptions.
+
setup for applications, and many
−
A best-of-both-worlds approach
+
exploit the free hosting opportuni-
−
is to use annotations to link mod-
+
ties of some platform cloud providers
−
els, which provides the convenience
+
(for example, Google’s App Engine).
−
of lightweight models while sup-
+
When the application grows in scope
−
porting high-level operations when
+
and criticality, however, an IaaS
−
required. Figure 2 shows an annota-
+
cloud might prove cheaper, more  
−
tion referring to an ontology from
+
flexible, and more reliable, prompt-
−
a fictitious DSL script for configu-
+
ing a transition.
−
ration. The script is more program-
+
The following discussion on
−
mer-oriented (in fact, it’s derived
+
semantic models applies to both ver-
−
from Ruby) but lacks an ontology’s
+
tical and horizontal interoperability.
−
richness. However, the annota-
+
The key in addressing both types is  
−
tion links the relevant components
+
that many of the core data and ser-
−
between the different levels, pro-
+
vices causing them follow the same
−
viding a way to facilitate high-level
+
semantic concepts. For example,
−
operations while maintaining a
+
almost all IaaS clouds follow concep-
−
simpler representation.
+
tually similar workflows when allo-
−
From the perspective based on
+
cating resources, although the actual
−
the type of semantics and software
+
service implementations and tools dif-
−
lifecycle stage—that is, looking at the
+
fer significantly. Similarly, the PaaS
−
cube in Figure 1 from the front—you
+
modeling space is a subset of that for
−
can see the modeling coverage for
+
IaaS, from a semantic perspective.
−
software deployment and manage-
+
These observations prompt us to
−
ment. Elastra’s Elastic Computing
+
argue for semantic models’ appli-
−
Modeling Language (ECML), Elas- </p>
+
cability, especially to supplement
−
<p style="float:right;width:350px">[[File:Chart1.png|350px]]<br /><br />[[File:Chart2.png|350px]]<br /><br />
+
interoperability in the cloud space.
−
<table width="350" border="0" cellpadding="5">
+
Some parts of the scientific and  
 +
engineering community weren’t </p>
 +
<p style="float:right;width:400px">[[File:Chart4.png|380px]]<br /><br />
 +
<table width="400" border="0" cellpadding="5">
 
<tr>
 
<tr>
−
<td width="175"><p style="float:left">tic Deployment Modeling Language
+
<td width="200"><p style="float:left">impressed by early semantic-model-
−
(EDML), and Elastic Management
+
ing approaches, especially ones that
−
Modeling Language (EMML) ontolo-
+
required large up-front investment.
−
gies cover many system aspects
+
This perception, however, is chang-
−
and some nonfunctional aspects
+
ing rapidly with the influx of new
−
in all stages. We’re pleased to see
+
applications and technologies that
−
such industry initiative in adopting
+
exploit detailed semantic models to
−
semantic technologies.<br /><br />
+
provide improved functionality (for
−
<span style="font-size:12pt;color:purple">
+
example, biomedical ontologies cata-
−
Data Modeling</span><br />
+
loged at the US National Center for
−
Another opportunity for semantic </p></td>
+
Biomedical Ontology; www.bioon-
−
<td width="175"><p style="float:left">models for clouds lies in Resource
+
tology.org). Semantic models such
−
Description Framework (RDF) data
+
as ontologies can formalize more
−
modeling. As we discussed in part
+
details than other traditional mod-
−
1, a major concern plaguing cloud
+
eling techniques. They also enable
−
computing’s adoption is data lock-
+
reasoning, a way to make infer-
−
in—that is, the inability to port data
+
ences and gain new knowledge. Such
−
horizontally. Many vendors designed
+
rich models can improve traditional
−
schema-less, distributed data stores
+
functions far beyond what was once
−
with relaxed consistency models to
+
thought possible. For example, Pow-
−
provide high availability and elas-
+
erset (now part of Microsoft; www.
−
ticity to suit clouds’ needs. However, </p></td>
+
powerset.com), a search service
 +
provider, added considerable value
 +
to search results by incorporating
 +
semantic models and thus enabling
 +
fact discovery. These capabilities are
 +
being complemented by the ability
 +
to more rapidly create domain mod-
 +
els, often by mining crowd knowl-
 +
edge represented, for example, in
 +
Wikipedia1 or shared data, exempli-
 +
fied by the linked-object data cloud.
 +
The technologies showcased at the
 +
Semantic Technology Conference </p></td>
 +
<td width="200"><p style="float:left">(www.semant ic-conference.com)  
 +
also provide plenty of evidence of
 +
semantic-empowered commercial
 +
and scientific applications.
 +
Multidimensional Analysis
 +
of Cloud-Modeling
 +
Requirements
 +
We suggest a 3D slicing of the mod-
 +
eling requirements along the follow-
 +
ing dimensions (see Figure 2).
 +
The­ types­ of­ semantics that are
 +
useful for porting or interoperabil-
 +
ity in cloud computing are similar to
 +
those we introduced in 2003 for Web
 +
services.
 +
2 This is natural because the
 +
primary means of interacting with a  
 +
cloud environment is through Web
 +
services. The four types of seman-
 +
tics—data, functional, nonfunc-
 +
tional, and system—are based on the  
 +
different semantic aspects a model
 +
must cover.
 +
The­ language­ abstraction­ level
 +
indicates the modeling’s granular-
 +
ity and specificity. Although onto-
 +
logical modeling is preferable at
 +
a higher level, developers prefer
 +
detailed, concrete syntactic repre-
 +
sentations. These representations
 +
of different granularities might
 +
need to be related, often through
 +
explicit annotations. For example,  
 +
although service developers happily </p></td>
 
</tr>
 
</tr>
 
</table>
 
</table>
Line 165: Line 217:
 
<tr>
 
<tr>
 
<td>
 
<td>
−
[[File:Chart3.png|600px]]
+
[[File:Chart1.png|380px]]
−
<p style="float:left;width:200px">exploiting these data stores requires
+
<p style="float:left;width:200px">use Web Services Description Lan-
−
substantial redesign of many data-
+
guage (WSDL) descriptions in their
−
driven applications and often makes
+
Web services, these descriptions
−
porting data to a traditional rela-
+
are syntactic and can’t provide use-
−
tional database extremely difficult.
+
ful semantic details. To overcome
−
The current practice is to address
+
this deficiency, SAWSDL (Semantic
−
such transitions case-by-case.
+
Annotations for WSDL and XML  
−
A better approach is to model the
+
Schema; www.w3.org/TR/sawsdl)  
−
data in RDF and generate the specific
+
attaches semantic-model details to
−
target representations, and in some
+
WSDL documents.
−
cases even the code for the applica-
+
The­ software­ lifecycle­ stage is
−
tion’s data access layer. This method
+
important in determining the model-
−
can formulate transformations from
+
ing requirements. For example, some
−
one representation to another using
+
nonfunctional and system require-
−
the lifting-lowering mechanism.
+
ments might not be modeled during
−
Semantic Annotations for WSDL  
+
development but will be taken into
−
and XML Schema (SAWSDL; www.
+
account only during deployment. A
−
w3.org/TR/sawsdl) demonstrated this
+
different team handles each of these
−
mechanism’s use for data mediation.
+
lifecycle stages; this separation is
−
2
+
important so that one team doesn’t
−
Lightweight modeling in terms of
+
step on another’s toes. This sepa-
−
DSLs also applies here. For example,  
+
ration aims to focus the modeling
−
the Web services community has
+
effort on the correct time and people.
−
long used XML Schema definitions
+
Some cloud models fall under
−
as platform-agnostic data definitions.  
+
the nonfunctional/system/  ontology
−
Schema definitions serve as inputs to
+
space in Figure 2. Such models include
−
code generation tools that generate
+
the Elastic Computing Modeling
−
platform-specific data definitions.
+
Language (ECML), Elastic Deploy-
−
From the perspective of the type
+
ment Modeling Language (EDML), </p>
−
of semantics and software lifecycle
+
−
stage, most of this data modeling
+
−
applies during application develop-
+
−
ment. Concrete artifacts generated
+
−
from these high-level models would
+
−
be used mostly during subsequent
+
−
lifecycle stages.</p>
+
 
<p style="float:left;width:10px"> </p>
 
<p style="float:left;width:10px"> </p>
 
<p style="float:left;width:200px">
 
<p style="float:left;width:200px">
 +
and Elastic Management Modeling
 +
Language (EMML), all based on OWL
 +
and published by Elastra (www.elas-
 +
tra.com/technology/languages).
 +
However, some aspects of cloud
 +
modeling have received little or no
 +
attention. For example, there’s no
 +
comprehensive higher-level model-
 +
ing in the data and functional spaces.
 +
Lessons learned during large-scale
 +
ontological modeling in the Seman-
 +
tic Web and Semantic Web services,
 +
biology, and many other domains are
 +
readily applicable here and would
 +
help address some of the challenges
 +
in the cloud space.
 +
I
 +
n part 2, we’ll look at opportunities
 +
for semantic models in cloud com-
 +
puting. Particular areas in which
 +
these models can help are functional
 +
portability, data modeling, and ser-
 +
vice enrichment. <br /><br />
 
<span style="font-size:12pt;color:purple">
 
<span style="font-size:12pt;color:purple">
−
Service Enrichment</span><br />
+
References</span><br />
−
One feature differentiating the cloud
+
1. C. Thomas et al., “Growing Fields of
−
from other distributed environments
+
Interest—Using an Expand and Reduce
−
is the availability of Web services
+
Strategy for Domain Model Extraction,”</p>
−
to manipulate resources. Avail-
+
<p style="width:200px;float:right">Proc.­ 2008­ Int’l­ Conf.­ Web­ Intelligence­
−
ability of the service APIs lets you
+
and­ Intelligent­ Agent­ Technology (WI-
−
programmatically manage the cloud
+
IAT 08), vol. 1, IEEE CS Press, 2008, pp.  
−
resources, even from within the
+
496–502.
−
same cloud. These capabilities have
+
2.  K. Sivashanmugam et al., “Adding
−
revolutionized application deploy-
+
Semantics to Web Services Standards,”  
−
ment and management. For example,  
+
Proc.­Int’l­Conf.­Web­Services (ICWS 03),  
−
you can compose or mash up well-
+
CSREA Press, 2003, pp. 395–401.
−
defined services to facilitate elabo-
+
Amit Sheth is the director of Kno.e.sis—the
−
rate workflows.
+
Center of Excellence on Knowledge-
−
Service definitions are usually
+
Enabled Human-Centered Computing at  
−
syntactic, and many researchers
+
Wright State University. He’s also the  
−
have focused on embedding rich
+
university’s LexisNexis Ohio Eminent  
−
metadata in formal service descrip-
+
Scholar and an IEEE Fellow. He’s on the  
−
tions. One result of this research
+
Web at http://knoesis.org/amit.
−
is SAWSDL. A growing trend is
+
Ajith Ranabahu is pursuing a PhD in cloud-
−
to annotate HTML descriptions to
+
computing interoperability at Wright  
−
embed richer, machine-readable
+
State University. He worked with IBM  
−
semantic metadata. One reason for  
+
on Sharable Code and its Altocumulus  
−
this method’s popularity is search
+
project, and he coordinates the Cirrocu-
−
engines’ use of metadata to dis-
+
mulus project (http://knoesis.wright.edu/
−
play results in customized formats.
+
research/srl/projects/cirrocumulus). Con-
−
Yahoo’s SearchMonkey and Google
+
tact him at ajith.ranabhu@gmail.com.
−
Rich Snippets are two such micro-
+
Selected­ CS­ articles­ and­ columns­
−
format-driven schemes. These anno-
+
are­also­available­for­free­at­http://­
−
tations, unlike the DSL annotations
+
ComputingNow.computer.org.</p>
−
in Figure 3, might not always point
+
−
to ontologies. Their structure can be
+
−
based on a vocabulary or taxonomy—
+
−
a lower-grade nonsemantic model.
+
−
For example, the popular hCalendar </p>
+
−
<p style="width:200px;float:right">microformat is part of the “lowercase
+
−
semantic web” movement, which
+
−
emphasizes lightweight models.
+
−
Embedding rich semantic meta-
+
−
data in cloud service descriptions has
+
−
three main benefits that go beyond
+
−
customized search capabilities.
+
−
The first benefit deals with Rep-
+
−
resentational State Transfer (REST)
+
−
style services. Many cloud service
+
−
providers adopt REST-style Web ser-
+
−
vices that don’t advocate a formal
+
−
service description. These services
+
−
are described using HTML pages.
+
−
WSDL 2.0, the latest specification,
+
−
explicitly supports formal descrip-
+
−
tion of “RESTful” services but hasn’t
+
−
seen quick adoption. Alternative
+
−
approaches such as SA-REST3 (SA
+
−
stands for semantic annotation), a
+
−
generic annotation scheme that fol-
+
−
lows microformat design principles,
+
−
are becoming more applicable in
+
−
this space. These annotations enable
+
−
the seamless, flexible integration of
+
−
formalizations into RESTful service
+
−
descriptions. This opens the door
+
−
to many exciting avenues such as
+
−
faceted search to identify relevant
+
−
reusable services and semiautomated
+
−
service compositions.
+
−
The second benefit deals with
+
−
handling change. The cloud space is
+
−
still evolving. If the history of soft-
+
−
ware or component interoperability </p>
+
−
</td>
+
−
</tr>
+
−
<tr>
+
−
<td>
+
−
<p style="float:left;width:250px">is any guide, achieving consensus in
+
−
the cloud space will be difficult and
+
−
won’t likely happen soon. Attaching
+
−
formalizations via annotations, how-
+
−
ever, is flexible enough to accom-
+
−
modate an evolving model. This is
+
−
especially attractive to vendors who
+
−
aren’t willing to invest heavily in
+
−
interim standards.
+
−
The third benefit is that the for-
+
−
malizations apply not only to ser-
+
−
vice descriptions but also to many
+
−
other aspects such as service-level
+
−
agreements (SLAs) and software
+
−
licenses. You can use annotations
+
−
to embed formalizations even for
+
−
these documents, facilitating more
+
−
automation in the cloud space. For
+
−
example, Web Service- Level Agree-
+
−
ment (WSLA; www.research.ibm.
+
−
com/wsla) specification provides a
+
−
way to formalize SLAs, but creating
+
−
and maintaining these formaliza-
+
−
tions is time-consuming.
+
−
Figure 3 illustrates using SA-
+
−
REST annotations on the Amazon
+
−
Elastic Compute Cloud (EC2) SLA
+
−
document. It shows how a capable
+
−
processor could use these annota-
+
−
tions to extract a WSLA equivalent
+
−
of the human-readable SLA.
+
−
These benefits’ importance comes
+
−
into perspective when you consider
+
−
the enormous body of research on
+
−
standard-driven service compo-
+
−
sitions and agreement matching.
+
−
The informal, non-standard-driven
+
−
nature of many cloud services made
+
−
most of the previous research inap-
+
−
plicable. However, being able to
+
−
glean formalizations from existing
+
−
documents opens the doors to apply
+
−
many well-researched techniques.<br /><br />
+
−
The cloud space presents many
+
−
opportunities for researchers,
+
−
and we see a plethora of applica-
+
−
tions that use semantic modeling.
+
−
Issues such as interoperability and
+
−
data portability, which the cloud
+
−
community is facing right now, are
+
−
the very issues for which semantic </p>
+
−
<p style="width:10px;float:left"> </p>
+
−
<p style="float:left;width:250px">models excel in providing solutions.
+
−
However, learning from the past,
+
−
we advocate a multilevel modeling
+
−
strategy to provide smooth tran-
+
−
sitions into different granularity
+
−
levels. We also think that DSLs can
+
−
play an important role in the cloud
+
−
space to provide lightweight model-
+
−
ing in an appealing manner to the
+
−
software engineering community.
+
−
<br /><br /><span style="font-size:12pt;color:purple">References</span><br />
+
−
<span style="font-size:9pt">
+
−
1.  F. Chang et al., “Bigtable: A Distributed<br />
+
−
Storage System for Structured Data,” in<br />
+
−
Proc. Usenix Symp. Operating Systems<br />
+
−
Design and Implementation, Usenix<br />
+
−
Assoc., 2006, p. 15.<br />
+
−
2. M. Nagarajan et al., “Semantic Interoper-<br />
+
−
ability of Web Services—Challenges and<br />
+
−
Experiences,” Proc. 2006 IEEE Int’l Conf.<br />
+
−
Web Services (ICWS 06), IEEE CS Press,<br />
+
−
2006, p. 373–382.<br />
+
−
3.  A.P. Sheth, K. Gomadam, and J. Lathem,<br />
+
−
“SA-REST: Semantically Interoperable<br />
+
−
and Easier-to-Use Services and Mash-<br />
+
−
ups,”  IEEE Internet Computing, vol. 11,<br />
+
−
no. 6, 2007, pp. 91–94.</span><br />><br />
+
−
Amit Sheth is the director of the Ohio Cen-<br />
+
−
ter of Excellence on Knowledge-Enabled<br />
+
−
Computing (Kno.e.sis) at Wright State<br />
+
−
University. He’s also the university’s<br />
+
−
LexisNexis Ohio Eminent Scholar. He’s<br />
+
−
on the Web at http://knoesis.org/amit/.<br /><br />
+
−
Ajith Ranabahu is pursuing a PhD in cloud-<br />
+
−
computing interoperability at Wright<br />
+
−
State University. He worked with IBM<br />
+
−
on Sharable Code and its Altocumulus<br />
+
−
project, and he coordinates the Cirrocu-<br />
+
−
mulus project (http://knoesis.wright.edu/research/srl/projects/cirrocumulus). Con-tact him at ajith@knoesis.org
+
−
Selected CS articles and columns
+
−
are also <br />available for free at http://ComputingNow.computer.org/</p>
+
 
</td>
 
</td>
 
</tr>
 
</tr>
 
</table>
 
</table>

Revision as of 19:52, 13 July 2010

Semantic Modeling

for Cloud Computing, Part 1


Amit Sheth and Ajith Ranabahu • Wright State University

C loud computing has lately become the attention grabber in both academia and industry. The promise of seemingly unlim- ited, readily available utility-type computing has opened many doors previously considered difficult, if not impossible, to open. The cloud- computing landscape, however, is still evolving, and we must overcome many challenges to fos- ter widespread adoption of clouds. The main challenge is interoperability. Numerous vendors have introduced paradigms and services, making the cloud landscape diverse and heterogeneous. Just as in the com- puter hardware industry’s early days, when each vendor made and marketed its own version of (incompatible) computer equipment, clouds are diverse and vendor-locked. Although many efforts are under way to standardize clouds’ important technical aspects, notably from the US National Institute of Standards and Technol- ogy (NIST), consolidation and standardization are still far from reality. In this two-part article, we discuss how a little bit of semantics can help address clouds’ key interoperability and porta- bility issues. Cloud-Related Challenges Figure 1 shows the three main flavors of clouds as outlined by NIST (http://csrc.nist.gov/groups/ SNS/cloud-computing). Infrastructure-as-a-­ service (IaaS) clouds have the largest gap (a high workload but little automation) in terms of deploying and managing an application. Plat- form-as-a-service (PaaS) or software-as-a-service (SaaS) clouds have substantially lower workloads, but at the expense of flexibility and portability. Given this diverse environment, a cloud ser- vice consumer faces four challenges. First, depending on the application’s require- ments, legal issues, and other possible consid-

erations, the consumer must select a cloud to use. Each cloud vendor exposes these details in different formats and at different granularity levels. Second, the consumer must learn about the vendor’s technical aspects (service interface, scaling configuration, and so on) and workflow. Third, the consumer must then develop an application or customize the vendor-provided multitenant application to fulfill his or her requirements. When doing this, the consumer must take into account various technical details such as the choice of programming language and limitations in the application runtime, which will all be vendor-specific. Finally, after deploying the application, if the consumer must change the service provider (which happens surprisingly often), at least two major considerations arise. First, the consumer might need to rewrite or modify the application code to suit the new provider’s environment. For some clouds (such as IaaS), this is minimal, but porting the code in PaaS and SaaS clouds will likely require more effort. The second consideration is that data col- lected for the application might need transfor- mation. Data is the most important asset the application generates over time and is essential for continued functioning. The transformation might even need to carry across different data models. The industry practice is to address such transformations case-by-case. To overcome these challenges and provide better insight into the aspects requiring atten- tion, proper modeling in this space is essential. Semantic modeling can help with this. Cloud Interoperability? First, a word about cloud interoperability is in order. Interoperability requirements in the cloud

landscape in Figure 1 arise owing to two types of heterogeneities. The first is vertical heterogene- ity—that is, within a single silo. We can address this by using middle- ware to homogenize the API and sometimes by enforcing standardiza- tion. For example, the Open Virtual- ization Format (OVF; www.dmtf.org/ vman) is an emerging standard that allows migration of virtual-machine snapshots across IaaS clouds. The second type is horizontal heterogeneity—that is, across silos. Overcoming this is fundamentally more difficult. Each silo provides different abstraction levels and ser- vices. High-level modeling pays off, especially when you must move an application and code horizontally across these silos. Surprisingly, many small and medium businesses make horizontal transitions. PaaS clouds offer faster setup for applications, and many exploit the free hosting opportuni- ties of some platform cloud providers (for example, Google’s App Engine). When the application grows in scope and criticality, however, an IaaS cloud might prove cheaper, more flexible, and more reliable, prompt- ing a transition. The following discussion on semantic models applies to both ver- tical and horizontal interoperability. The key in addressing both types is that many of the core data and ser- vices causing them follow the same semantic concepts. For example, almost all IaaS clouds follow concep- tually similar workflows when allo- cating resources, although the actual service implementations and tools dif- fer significantly. Similarly, the PaaS modeling space is a subset of that for IaaS, from a semantic perspective. These observations prompt us to argue for semantic models’ appli- cability, especially to supplement interoperability in the cloud space. Some parts of the scientific and engineering community weren’t

Chart4.png

impressed by early semantic-model-

ing approaches, especially ones that required large up-front investment. This perception, however, is chang- ing rapidly with the influx of new applications and technologies that exploit detailed semantic models to provide improved functionality (for example, biomedical ontologies cata- loged at the US National Center for Biomedical Ontology; www.bioon- tology.org). Semantic models such as ontologies can formalize more details than other traditional mod- eling techniques. They also enable reasoning, a way to make infer- ences and gain new knowledge. Such rich models can improve traditional functions far beyond what was once thought possible. For example, Pow- erset (now part of Microsoft; www. powerset.com), a search service provider, added considerable value to search results by incorporating semantic models and thus enabling fact discovery. These capabilities are being complemented by the ability to more rapidly create domain mod- els, often by mining crowd knowl- edge represented, for example, in Wikipedia1 or shared data, exempli- fied by the linked-object data cloud. The technologies showcased at the

Semantic Technology Conference

(www.semant ic-conference.com)

also provide plenty of evidence of semantic-empowered commercial and scientific applications. Multidimensional Analysis of Cloud-Modeling Requirements We suggest a 3D slicing of the mod- eling requirements along the follow- ing dimensions (see Figure 2). The­ types­ of­ semantics that are useful for porting or interoperabil- ity in cloud computing are similar to those we introduced in 2003 for Web services. 2 This is natural because the primary means of interacting with a cloud environment is through Web services. The four types of seman- tics—data, functional, nonfunc- tional, and system—are based on the different semantic aspects a model must cover. The­ language­ abstraction­ level indicates the modeling’s granular- ity and specificity. Although onto- logical modeling is preferable at a higher level, developers prefer detailed, concrete syntactic repre- sentations. These representations of different granularities might need to be related, often through explicit annotations. For example,

although service developers happily

Chart1.png

use Web Services Description Lan- guage (WSDL) descriptions in their Web services, these descriptions are syntactic and can’t provide use- ful semantic details. To overcome this deficiency, SAWSDL (Semantic Annotations for WSDL and XML Schema; www.w3.org/TR/sawsdl) attaches semantic-model details to WSDL documents. The­ software­ lifecycle­ stage is important in determining the model- ing requirements. For example, some nonfunctional and system require- ments might not be modeled during development but will be taken into account only during deployment. A different team handles each of these lifecycle stages; this separation is important so that one team doesn’t step on another’s toes. This sepa- ration aims to focus the modeling effort on the correct time and people. Some cloud models fall under the nonfunctional/system/ ontology space in Figure 2. Such models include the Elastic Computing Modeling Language (ECML), Elastic Deploy- ment Modeling Language (EDML),

and Elastic Management Modeling Language (EMML), all based on OWL and published by Elastra (www.elas- tra.com/technology/languages). However, some aspects of cloud modeling have received little or no attention. For example, there’s no comprehensive higher-level model- ing in the data and functional spaces. Lessons learned during large-scale ontological modeling in the Seman- tic Web and Semantic Web services, biology, and many other domains are readily applicable here and would help address some of the challenges in the cloud space. I n part 2, we’ll look at opportunities for semantic models in cloud com- puting. Particular areas in which these models can help are functional portability, data modeling, and ser- vice enrichment.

References
1. C. Thomas et al., “Growing Fields of Interest—Using an Expand and Reduce Strategy for Domain Model Extraction,”

Proc.­ 2008­ Int’l­ Conf.­ Web­ Intelligence­ and­ Intelligent­ Agent­ Technology (WI- IAT 08), vol. 1, IEEE CS Press, 2008, pp. 496–502. 2. K. Sivashanmugam et al., “Adding Semantics to Web Services Standards,” Proc.­Int’l­Conf.­Web­Services (ICWS 03), CSREA Press, 2003, pp. 395–401. Amit Sheth is the director of Kno.e.sis—the Center of Excellence on Knowledge- Enabled Human-Centered Computing at Wright State University. He’s also the university’s LexisNexis Ohio Eminent Scholar and an IEEE Fellow. He’s on the Web at http://knoesis.org/amit. Ajith Ranabahu is pursuing a PhD in cloud- computing interoperability at Wright State University. He worked with IBM on Sharable Code and its Altocumulus project, and he coordinates the Cirrocu- mulus project (http://knoesis.wright.edu/ research/srl/projects/cirrocumulus). Con- tact him at ajith.ranabhu@gmail.com. Selected­ CS­ articles­ and­ columns­ are­also­available­for­free­at­http:// ComputingNow.computer.org.