Difference between revisions of "Modeling for cloud part1"
Line 143: | Line 143: | ||
in all stages. We’re pleased to see | in all stages. We’re pleased to see | ||
such industry initiative in adopting | such industry initiative in adopting | ||
− | semantic technologies. | + | semantic technologies.<br /><br /> |
− | Data Modeling | + | <span style="font-size:12pt;color:purple"> |
+ | Data Modeling</span><br /> | ||
Another opportunity for semantic </p></td> | Another opportunity for semantic </p></td> | ||
<td width="175"><p style="float:left">models for clouds lies in Resource | <td width="175"><p style="float:left">models for clouds lies in Resource | ||
Line 202: | Line 203: | ||
lifecycle stages.</p> | lifecycle stages.</p> | ||
<p style="float:left;width:10px"> </p> | <p style="float:left;width:10px"> </p> | ||
− | <p style="float:left;width:200px">Service Enrichment | + | <p style="float:left;width:200px"> |
+ | <span style="font-size:12pt;color:purple"> | ||
+ | Service Enrichment</span><br /> | ||
One feature differentiating the cloud | One feature differentiating the cloud | ||
from other distributed environments | from other distributed environments | ||
Line 318: | Line 321: | ||
glean formalizations from existing | glean formalizations from existing | ||
documents opens the doors to apply | documents opens the doors to apply | ||
− | many well-researched techniques. | + | many well-researched techniques.<br /><br /> |
The cloud space presents many | The cloud space presents many | ||
opportunities for researchers, | opportunities for researchers, | ||
Line 327: | Line 330: | ||
community is facing right now, are | community is facing right now, are | ||
the very issues for which semantic </p> | 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. | <p style="float:left;width:250px">models excel in providing solutions. | ||
However, learning from the past, | However, learning from the past, |
Revision as of 19:21, 13 July 2010
Semantic Modeling
Part 1 of this two-part article discussed
challenges related to cloud computing,
cloud interoperability, and multidimen-
sional analysis of cloud-modeling requirements
(see the May/June issue). Here, we look more
specifically at areas in which semantic models
can support cloud computing. tics, however, are similar. Metadata added
through annotations pointing to generic opera-
tional models would play a key role in consoli-
dating these APIs and enable interoperability
among the heterogeneous cloud environments. | ||
to the availability of extensible interpreted programming languages such as Ruby and Python. Unlike UML, a DSL is applicable only in a given domain but enables a light- weight model in that domain, often without requiring proprietary tools. For example, you can use IBM’s Sharable Code DSL (http://services.alphaworks.ibm.com/isc), which is a mashup generator, with a basic text editor. (However, providing graphical abstractions and specialized tooling would be more convenient for users.) “Lightweight” signifies that these models don’t use rich knowledge rep- resentation languages and so have limited reasoning capabilities. Our Cirrocumulus project for cloud interoperability (http://knoesis.org/research/srl/projects/cirrocumulus) uses DSLs to bridge the gap between executable artifacts and high-level semantic models. A DSL, although domain specific, can provide a more programmer-oriented representation of functional, non- functional, or even data descriptions. A best-of-both-worlds approach is to use annotations to link mod- els, which provides the convenience of lightweight models while sup- porting high-level operations when required. Figure 2 shows an annota- tion referring to an ontology from a fictitious DSL script for configu- ration. The script is more program- mer-oriented (in fact, it’s derived from Ruby) but lacks an ontology’s richness. However, the annota- tion links the relevant components between the different levels, pro- viding a way to facilitate high-level operations while maintaining a simpler representation. From the perspective based on the type of semantics and software lifecycle stage—that is, looking at the cube in Figure 1 from the front—you can see the modeling coverage for software deployment and manage- ment. Elastra’s Elastic Computing Modeling Language (ECML), Elas-
|
||
exploiting these data stores requires substantial redesign of many data- driven applications and often makes porting data to a traditional rela- tional database extremely difficult. The current practice is to address such transitions case-by-case. A better approach is to model the data in RDF and generate the specific target representations, and in some cases even the code for the applica- tion’s data access layer. This method can formulate transformations from one representation to another using the lifting-lowering mechanism. Semantic Annotations for WSDL and XML Schema (SAWSDL; www. w3.org/TR/sawsdl) demonstrated this mechanism’s use for data mediation. 2 Lightweight modeling in terms of DSLs also applies here. For example, the Web services community has long used XML Schema definitions as platform-agnostic data definitions. Schema definitions serve as inputs to code generation tools that generate platform-specific data definitions. From the perspective of the type 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.
Service Enrichment 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 |
||
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.
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.
|