Difference between revisions of "Modeling for cloud part1"
(Fixes to hyphens) |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | This is the Wiki version of the article published in IEEE Internet Computing May/June 2010 Issue. | ||
+ | [http://www.computer.org/portal/web/csdl/doi/10.1109/MIC.2010.77 External Reference] | ||
+ | |||
<table border="1" width="650" cellpadding="10"> | <table border="1" width="650" cellpadding="10"> | ||
<tr> | <tr> | ||
Line 5: | Line 8: | ||
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"> | ||
− | + | <span style="font-size:16pt;color:purple"> | |
− | loud computing has lately become the | + | C</span>loud computing has lately become the |
attention grabber in both academia and | attention grabber in both academia and | ||
− | industry. The promise of seemingly | + | industry. The promise of seemingly unlimited, readily available utility-type computing |
− | + | ||
has opened many doors previously considered | has opened many doors previously considered | ||
difficult, if not impossible, to open. The cloud- | difficult, if not impossible, to open. The cloud- | ||
computing landscape, however, is still evolving, | computing landscape, however, is still evolving, | ||
− | and we must overcome many challenges to | + | and we must overcome many challenges to foster widespread adoption of clouds. |
− | + | ||
The main challenge is interoperability. | The main challenge is interoperability. | ||
Numerous vendors have introduced paradigms | Numerous vendors have introduced paradigms | ||
and services, making the cloud landscape | and services, making the cloud landscape | ||
− | diverse and heterogeneous. Just as in the | + | diverse and heterogeneous. Just as in the computer hardware industry’s early days, when each |
− | + | ||
vendor made and marketed its own version of | vendor made and marketed its own version of | ||
(incompatible) computer equipment, clouds are | (incompatible) computer equipment, clouds are | ||
Line 25: | Line 25: | ||
efforts are under way to standardize clouds’ | efforts are under way to standardize clouds’ | ||
important technical aspects, notably from the | important technical aspects, notably from the | ||
− | US National Institute of Standards and | + | US National Institute of Standards and Technology (NIST), consolidation and standardization |
− | + | ||
are still far from reality. In this two-part article, | are still far from reality. In this two-part article, | ||
we discuss how a little bit of semantics can help | we discuss how a little bit of semantics can help | ||
address clouds’ key interoperability and porta- | address clouds’ key interoperability and porta- | ||
− | bility issues. | + | bility issues.<br /><br /> |
− | Cloud-Related Challenges | + | <span style="font-size:12pt;color:purple"> |
+ | Cloud-Related Challenges</span><br /> | ||
Figure 1 shows the three main flavors of clouds | Figure 1 shows the three main flavors of clouds | ||
− | as outlined by NIST (http://csrc.nist.gov/groups/ | + | as outlined by NIST (http://csrc.nist.gov/groups/SNS/cloud-computing). Infrastructure-as-a- |
− | SNS/cloud-computing). Infrastructure-as-a- | + | |
service (IaaS) clouds have the largest gap (a | service (IaaS) clouds have the largest gap (a | ||
high workload but little automation) in terms of | high workload but little automation) in terms of | ||
− | deploying and managing an application. | + | deploying and managing an application. Platform-as-a-service (PaaS) or software-as-a-service |
− | + | ||
(SaaS) clouds have substantially lower workloads, | (SaaS) clouds have substantially lower workloads, | ||
but at the expense of flexibility and portability. | but at the expense of flexibility and portability. | ||
− | Given this diverse environment, a cloud | + | Given this diverse environment, a cloud service consumer faces four challenges. |
− | + | First, depending on the application’s requirements, legal issues, and other possible consid</p> | |
− | First, depending on the application’s | + | |
− | + | ||
<p style="float:right;width:300px">erations, the consumer must select a cloud to | <p style="float:right;width:300px">erations, the consumer must select a cloud to | ||
use. Each cloud vendor exposes these details in | use. Each cloud vendor exposes these details in | ||
Line 78: | Line 74: | ||
transformations case-by-case. | transformations case-by-case. | ||
To overcome these challenges and provide | To overcome these challenges and provide | ||
− | better insight into the aspects requiring | + | better insight into the aspects requiring attention, proper modeling in this space is essential. |
− | + | Semantic modeling can help with this.<br /><br /> | |
− | Semantic modeling can help with this. | + | <span style="font-size:12pt;color:purple"> |
− | Cloud Interoperability? | + | Cloud Interoperability?</span><br /> |
First, a word about cloud interoperability is in | First, a word about cloud interoperability is in | ||
order. Interoperability requirements in the cloud </p> | order. Interoperability requirements in the cloud </p> | ||
Line 88: | Line 84: | ||
<p style="float:left;width:200px">landscape in Figure 1 arise owing to | <p style="float:left;width:200px">landscape in Figure 1 arise owing to | ||
two types of heterogeneities. | two types of heterogeneities. | ||
− | The first is vertical | + | The first is vertical heterogeneity — that is, within a single silo. We |
− | + | can address this by using middleware to homogenize the API and | |
− | can address this by using | + | sometimes by enforcing standardization. For example, the Open Virtualization Format (OVF; www.dmtf.org/ |
− | + | ||
− | sometimes by enforcing | + | |
− | + | ||
− | + | ||
vman) is an emerging standard that | vman) is an emerging standard that | ||
allows migration of virtual-machine | allows migration of virtual-machine | ||
Line 102: | Line 94: | ||
Overcoming this is fundamentally | Overcoming this is fundamentally | ||
more difficult. Each silo provides | more difficult. Each silo provides | ||
− | different abstraction levels and | + | different abstraction levels and services. High-level modeling pays off, |
− | + | ||
especially when you must move an | especially when you must move an | ||
application and code horizontally | application and code horizontally | ||
Line 111: | Line 102: | ||
transitions. PaaS clouds offer faster | transitions. PaaS clouds offer faster | ||
setup for applications, and many | setup for applications, and many | ||
− | exploit the free hosting | + | exploit the free hosting opportunities of some platform cloud providers |
− | + | ||
(for example, Google’s App Engine). | (for example, Google’s App Engine). | ||
When the application grows in scope | When the application grows in scope | ||
and criticality, however, an IaaS | and criticality, however, an IaaS | ||
cloud might prove cheaper, more | cloud might prove cheaper, more | ||
− | flexible, and more reliable, | + | flexible, and more reliable, prompting a transition. |
− | + | ||
The following discussion on | The following discussion on | ||
semantic models applies to both ver- | semantic models applies to both ver- | ||
tical and horizontal interoperability. | tical and horizontal interoperability. | ||
The key in addressing both types is | The key in addressing both types is | ||
− | that many of the core data and | + | that many of the core data and services causing them follow the same |
− | + | ||
semantic concepts. For example, | semantic concepts. For example, | ||
− | almost all IaaS clouds follow | + | almost all IaaS clouds follow conceptually similar workflows when allocating resources, although the actual |
− | + | service implementations and tools differ significantly. Similarly, the PaaS | |
− | + | ||
− | service implementations and tools | + | |
− | + | ||
modeling space is a subset of that for | modeling space is a subset of that for | ||
IaaS, from a semantic perspective. | IaaS, from a semantic perspective. | ||
These observations prompt us to | These observations prompt us to | ||
− | argue for semantic models’ | + | argue for semantic models’ applicability, especially to supplement |
− | + | ||
interoperability in the cloud space. | interoperability in the cloud space. | ||
Some parts of the scientific and | Some parts of the scientific and | ||
Line 142: | Line 126: | ||
<table width="400" border="0" cellpadding="5"> | <table width="400" border="0" cellpadding="5"> | ||
<tr> | <tr> | ||
− | <td width="200"><p style="float:left">impressed by early semantic- | + | <td width="200"><p style="float:left">impressed by early semantic-modeling approaches, especially ones that |
− | + | ||
required large up-front investment. | required large up-front investment. | ||
− | This perception, however, is | + | This perception, however, is changing rapidly with the influx of new |
− | + | ||
applications and technologies that | applications and technologies that | ||
exploit detailed semantic models to | exploit detailed semantic models to | ||
provide improved functionality (for | provide improved functionality (for | ||
− | example, biomedical ontologies | + | example, biomedical ontologies cataloged at the US National Center for |
− | + | ||
Biomedical Ontology; www.bioon- | Biomedical Ontology; www.bioon- | ||
tology.org). Semantic models such | tology.org). Semantic models such | ||
as ontologies can formalize more | as ontologies can formalize more | ||
− | details than other traditional | + | details than other traditional modeling techniques. They also enable |
− | + | reasoning, a way to make inferences and gain new knowledge. Such | |
− | reasoning, a way to make | + | |
− | + | ||
rich models can improve traditional | rich models can improve traditional | ||
functions far beyond what was once | functions far beyond what was once | ||
− | thought possible. For example, | + | thought possible. For example, Powerset (now part of Microsoft; www. |
− | + | ||
powerset.com), a search service | powerset.com), a search service | ||
provider, added considerable value | provider, added considerable value | ||
Line 169: | Line 147: | ||
fact discovery. These capabilities are | fact discovery. These capabilities are | ||
being complemented by the ability | being complemented by the ability | ||
− | to more rapidly create domain | + | to more rapidly create domain models, often by mining crowd knowledge represented, for example, in |
− | + | Wikipedia1 or shared data, exemplified by the linked-object data cloud. | |
− | + | ||
− | Wikipedia1 or shared data, | + | |
− | + | ||
The technologies showcased at the | The technologies showcased at the | ||
Semantic Technology Conference </p></td> | Semantic Technology Conference </p></td> | ||
Line 179: | Line 154: | ||
also provide plenty of evidence of | also provide plenty of evidence of | ||
semantic-empowered commercial | semantic-empowered commercial | ||
− | and scientific applications. | + | and scientific applications.<br /><br /> |
+ | <span style="font-size:12pt;color:purple"> | ||
Multidimensional Analysis | Multidimensional Analysis | ||
of Cloud-Modeling | of Cloud-Modeling | ||
− | Requirements | + | Requirements</span><br /> |
− | We suggest a 3D slicing of the | + | We suggest a 3D slicing of the modeling requirements along the following dimensions (see Figure 2). |
− | + | ||
− | + | ||
The types of semantics that are | The types of semantics that are | ||
useful for porting or interoperabil- | useful for porting or interoperabil- | ||
Line 194: | Line 168: | ||
primary means of interacting with a | primary means of interacting with a | ||
cloud environment is through Web | cloud environment is through Web | ||
− | services. The four types of | + | services. The four types of semantics—data, functional, nonfunctional, and system—are based on the |
− | + | ||
− | + | ||
different semantic aspects a model | different semantic aspects a model | ||
must cover. | must cover. | ||
The language abstraction level | The language abstraction level | ||
− | indicates the modeling’s | + | indicates the modeling’s granularity and specificity. Although ontological modeling is preferable at |
− | + | ||
− | + | ||
a higher level, developers prefer | a higher level, developers prefer | ||
− | detailed, concrete syntactic | + | detailed, concrete syntactic representations. These representations |
− | + | ||
of different granularities might | of different granularities might | ||
need to be related, often through | need to be related, often through | ||
Line 221: | Line 190: | ||
guage (WSDL) descriptions in their | guage (WSDL) descriptions in their | ||
Web services, these descriptions | Web services, these descriptions | ||
− | are syntactic and can’t provide | + | are syntactic and can’t provide useful semantic details. To overcome |
− | + | ||
this deficiency, SAWSDL (Semantic | this deficiency, SAWSDL (Semantic | ||
Annotations for WSDL and XML | Annotations for WSDL and XML | ||
Line 229: | Line 197: | ||
WSDL documents. | WSDL documents. | ||
The software lifecycle stage is | The software lifecycle stage is | ||
− | important in determining the | + | important in determining the modeling requirements. For example, some |
− | + | ||
nonfunctional and system require- | nonfunctional and system require- | ||
ments might not be modeled during | ments might not be modeled during | ||
Line 238: | Line 205: | ||
lifecycle stages; this separation is | lifecycle stages; this separation is | ||
important so that one team doesn’t | important so that one team doesn’t | ||
− | step on another’s toes. This | + | step on another’s toes. This separation aims to focus the modeling |
− | + | ||
effort on the correct time and people. | effort on the correct time and people. | ||
Some cloud models fall under | Some cloud models fall under | ||
Line 245: | Line 211: | ||
space in Figure 2. Such models include | space in Figure 2. Such models include | ||
the Elastic Computing Modeling | the Elastic Computing Modeling | ||
− | Language (ECML), Elastic | + | Language (ECML), Elastic Deployment Modeling Language (EDML), </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 | and Elastic Management Modeling | ||
Language (EMML), all based on OWL | Language (EMML), all based on OWL | ||
− | and published by Elastra (www. | + | and published by Elastra ([http://www.elastra.com/technology/languages Elastra Languages]). |
− | + | ||
However, some aspects of cloud | However, some aspects of cloud | ||
modeling have received little or no | modeling have received little or no | ||
attention. For example, there’s no | attention. For example, there’s no | ||
− | comprehensive higher-level | + | comprehensive higher-level modeling in the data and functional spaces. |
− | + | ||
Lessons learned during large-scale | Lessons learned during large-scale | ||
− | ontological modeling in the | + | ontological modeling in the Semantic Web and Semantic Web services, |
− | + | ||
biology, and many other domains are | biology, and many other domains are | ||
readily applicable here and would | readily applicable here and would | ||
help address some of the challenges | help address some of the challenges | ||
− | in the cloud space. | + | in the cloud space.<br /> |
− | I | + | <span style="font-size:16pt;color:purple"> |
− | n part 2, we’ll look at opportunities | + | I</span>n part 2, we’ll look at opportunities |
− | for semantic models in cloud | + | for semantic models in cloud computing. Particular areas in which |
− | + | ||
these models can help are functional | these models can help are functional | ||
portability, data modeling, and ser- | portability, data modeling, and ser- | ||
Line 291: | Line 252: | ||
university’s LexisNexis Ohio Eminent | university’s LexisNexis Ohio Eminent | ||
Scholar and an IEEE Fellow. He’s on the | Scholar and an IEEE Fellow. He’s on the | ||
− | Web at http://knoesis.org/amit. | + | Web at [http://knoesis.org/amit http://knoesis.org/amit]. |
Ajith Ranabahu is pursuing a PhD in cloud- | Ajith Ranabahu is pursuing a PhD in cloud- | ||
computing interoperability at Wright | computing interoperability at Wright | ||
State University. He worked with IBM | State University. He worked with IBM | ||
on Sharable Code and its Altocumulus | on Sharable Code and its Altocumulus | ||
− | project, and he coordinates the | + | project, and he coordinates the [http://knoesis.wright.edu/research/srl/projects/cirrocumulus Cirrocumulus project]. Contact him at ajith.ranabahu@gmail.com. |
− | + | </p> | |
− | research/srl/projects/cirrocumulus | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
</td> | </td> | ||
</tr> | </tr> | ||
</table> | </table> |
Latest revision as of 15:43, 30 July 2010
This is the Wiki version of the article published in IEEE Internet Computing May/June 2010 Issue. External Reference
Semantic Modeling
Cloud computing has lately become the
attention grabber in both academia and
industry. The promise of seemingly unlimited, 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 foster 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 computer 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 Technology (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. 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 attention, proper modeling in this space is essential.
Semantic modeling can help with this. | ||
landscape in Figure 1 arise owing to two types of heterogeneities. The first is vertical heterogeneity — that is, within a single silo. We can address this by using middleware to homogenize the API and sometimes by enforcing standardization. For example, the Open Virtualization 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 services. 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 opportunities 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, prompting 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 services causing them follow the same semantic concepts. For example, almost all IaaS clouds follow conceptually similar workflows when allocating resources, although the actual service implementations and tools differ 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’ applicability, especially to supplement interoperability in the cloud space. Some parts of the scientific and engineering community weren’t
|
||
use Web Services Description Lan- guage (WSDL) descriptions in their Web services, these descriptions are syntactic and can’t provide useful 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 modeling 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 separation 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 Deployment Modeling Language (EDML),
and Elastic Management Modeling
Language (EMML), all based on OWL
and published by Elastra (Elastra Languages).
However, some aspects of cloud
modeling have received little or no
attention. For example, there’s no
comprehensive higher-level modeling in the data and functional spaces.
Lessons learned during large-scale
ontological modeling in the Semantic 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. 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’lConf.WebServices (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 Cirrocumulus project. Contact him at ajith.ranabahu@gmail.com. |