• 沒有找到結果。

As cloud computing emerges, SaaS applications based on the SOA [6] methodology have become a promising direction for future development and usage of software applications and have received a lot of research attentions. The SaaS- and SOA-related research works in the literature span a variety of different issues, including execution platforms and runtime environments[15] [16] [17], service discovery[18] [19], service selection[20] [21] [24], service replacement [54] [62] [63], service and resource allocation [24] [25] [35] [36] [37], service composition [22] [23], service orchestration [26] [27] [28] [29] [30], service choreography [30]

[31], service deployment[32] [33] [34], service security[38] [39], service trustworthy[40][41][42], and other issues. In this thesis, we focus on the issue of service selection which deals with the challenge regarding optimally selecting a service for each task in a composite cloud service from several functionally equivalent ones with an optimization objective of the entire composite cloud service under some QoS constraints.

Most previous studies on service selection assumed deterministic QoS parameters and proposed solutions based on different optimization techniques, such as genetic algorithms [60]

[61], ranking chaos optimization[53], particle swarm optimization [56] [57], Markov model [65], and some heuristic approaches [55] [64]. The work in [43] extends a component calculus to deal with software QoS properties, such as response time, availability, bandwidth requirement, and memory usage, in the process of selecting and composing software components. The authors of [44] proposed a method, called QCM, to deal with the issue that different users of the same cloud service might have different QoS demands. Consumer demands are modelled as three factors: quality constraints, preference weights and determinate degrees. QCM is performed through selecting top-k composite services for each pair of

subtasks in an iteration. The optimal solution in the last iteration is returned for a consumer. In [45] the authors presents a coordination language to express services, their interaction capabilities and information sharing constraints, and the infrastructure of a service cloud model in which services can be accurately provisioned, composed and reasoned over to provide necessary guarantees.

The works in [46] [67] focus on the multi-tenancy issue for SaaS. In [46], the authors explored the utility function of the SLA and uses an approach for the optimal selection of a multi-tenancy service based on a SLA utility function, while a novel QoS-driven approach was introduced in [67] for helping SaaS developers select the services for composing multi-tenant SaaS, which achieves SaaS providers’ optimization goals while fulfilling the end-users’ different levels of QoS constraints. A technique was proposed in [47] for predicting whether the execution of a service composition will be compliant with service level objectives (SLOs).

A multi-objective quality-driven service selection approach was presented in[48] to find service selections for a workflow whose quality of-service (QoS) values are Pareto-optimal, considering multiple QoS attributes such as response time, cost, and reliability. A selection is Pareto-optimal if no other selection has better QoS values for some attributes and at least equivalent values for all others. The authors of [49] presented a novel model for the service selection problem of workflow-based applications in the context of self-managing situated computing, where the execution environment includes different types of devices, from remote servers to personal notebooks, smartphones, and wireless sensors. The work deal with the tradeoff between the remote execution of software fragments and their dynamic deployment on local nodes of the computational environment.

The work in[50] combines the DSOL planning techniques with a linear optimizer to calculate the optimal plan for a composite cloud service with respect to the QoS requirements.

The approach in [51] uses discrete Bayesian Network to represent the economic model of end users. The authors of [52] investigated the use of rank aggregation methods for performing adequate information fusion for web service selection in view of composition. The goal is to take advantage of these methods working on ranks rather than on the direct values for inferring global QoS.

The above works deal with the service selection problem with deterministic QoS attributes. However, in practice we know that most performance parameters, such as service response time, are not always deterministic and rather follow a stochastic distribution.

Recently, there have been some research works starting to tackle such issues regarding stochastic QoS performance. The work in[58] aims to design a complete method to study the stochastic QoS of a composed web service at design time. The authors proposed a technique to derive non-Markovian stochastic Petri net (NMSPN) models from WS-BPEL processes, with the final goal of evaluating parameters such as the service time distribution and the service reliability.

The authors of [59] proposed an approach for web service dynamic composition based on global QoS constraints decomposition. The global QoS constraints are decomposed into local constraints by an algorithm named Culture Genetic Algorithm. Then, the best web services that can satisfy the local constraints are selected for each task during the running time.

In contrast to the dynamic approach, our approaches in this thesis complete the service selection process before the entire composite cloud service begin to serve users. The approach in [66] tries to maximize the quality of a single request and minimize the variance of the

quality over time simultaneously, but doesn’t deal with the issues regarding costs and penalties due to SLA violation.

The authors of [7] presented an integrated approach based on Integer Linear Programming (ILP) and simulation to address the service selection problem for complex workflows in conjunction with stochastic QoS parameters. The idea is to account for penalty cost, which accrue due to QoS violations, during the service selection process in order to reduce the impact of stochastic QoS behavior on total cost. The first approach of our works in this thesis shares the same goal, reduction of total costs of providing a composite cloud service, and the iterative service selection process with the work in [7]. However, our approach considers both service usage costs and QoS violation penalties in the service adaptation step and thus is more effective than the method in [7] regarding total cost reduction.

The work in [68] also deals with the issues of stochastic QoS performance when performing service selection for composite web services. The proposed solution is based on a dynamic programming approach, while our two approaches in this thesis are based on Integer Linear Programming (ILP) and statistics-based nonlinear programming, respectively. In addition to service response time and service usage costs, the approach in [68] also takes service availability into consideration, while our approach focuses on service response time and costs since the resource reliability on modern cloud platforms is usually pretty good, which makes service response time becomes relatively more important than the reliability issue. Regarding the penalty model, the work in [68] assumes a fixed penalty once SLA violation occurs. On the other hand, we consider the penalty to be proportional to the period of time exceeding the constraint defined in SLA, which is a more practical assumption.

Chapter 3. Service Selection under Stochastic

相關文件