Database Reference
In-Depth Information
Chapter 8
QoS-Aware Service Compositions
in Cloud Computing
Services in cloud computing can be categorized into application services and
utility computing services [ 68 ]. Almost all the software/applications that are
available through the Internet are application services, e.g., flight booking services,
hotel booking services. Utility computing services are software or virtualized
hardware that support application services, e.g., virtual machines, CPU services,
and storage services. Service compositions in cloud computing therefore include
compositions of application services and utility computing services. Compositions
in the application level are similar to the Web service compositions in Service-
Oriented Computing (SOC). Compositions in the utility level are similar to the task
matching and scheduling in grid computing. A composite application service fulfills
several tasks (i.e. abstract services ). Each task is implemented by several substitute
application services (i.e. concrete services ). The choice among these substitute
services is based on their non-functional properties, which are also referred to as
Quality of Service (QoS). QoS values of these substitute application services are
further dependent on the choices of utility computing services. In a word, once
a concrete application service is selected for each abstract service, the following
decisions have to be made: matching , i.e. assigning concrete application services
to utility computing services, and scheduling , i.e. ordering execution sequence of
application services.
Several approaches and systems are proposed to solve Web service composition
problems in SOC. Most of them [ 201 , 238 ] only consider the compositions in the
application level. Composition approaches in cloud computing need to consider
compositions both in the application level and utility computing level. Besides, most
existing composition approaches in SOC [ 201 , 238 ] use integer programming to find
the global optimized solution. Although this is useful for small-scale compositions,
it incurs a significant performance penalty if applied to large-scale composition
problems such as compositions in cloud computing [ 202 ]. Contrasts to these existing
approaches, Genetic Algorithms (GAs) are heuristic approaches to iteratively find
near-optimal solutions in large search spaces. There is ample evidence regarding the
applicability of GAs for large-scale optimization problems [ 202 , 229 ]. Whereas, no
GA based approach is available to compose services in cloud computing.
Search WWH ::




Custom Search