QoS-aware Composition of Web Services: A Look at Selection

0 downloads 0 Views 148KB Size Report
When a composition of Web services is designed, avail- able services are put together to form a defined flow of ex- ecutions. In a discovery process, a trader ...
QoS-aware Composition of Web Services: A Look at Selection Algorithms Michael C. Jaeger, Gero M¨uhl and Sebastian Golze TU Berlin, Institute of Telecommunication Systems, FR6-10, Franklinstrasse 28/29, D-10587 Berlin, Germany [email protected], {gmuehl, golze}@ivs.tu-berlin.de

Abstract

preceding paper we have introduced a model for this aggregation. The model identifies seven basic structural elements called composition patterns [2]. These patterns were derived from a set of workflow patterns by van der Aalst et al. [5]. Workflow patterns form a set of functional and structural requirements for workflow management systems. Among different reasons, we have chosen the workflow patterns because van der Aalst has shown that the workflow patterns can be applied also to flow languages for compositions [4]. Using these elements, the approach is to aggregate the QoS for each category and for each pattern element. Thus, the approach enables us to view the aggregation from a pattern-perspective. For an aggregation algorithm, not the whole composition is relevant at once, but rather only the local composition patterns.

When a composition of Web services is designed, available services are put together to form a defined flow of executions. In a discovery process, a trader proposes available Web services as potential candidates. In a succeeding selection, for each task a trader chooses one candidate to form the optimal composition due to selection criteria. This paper discusses how the selection can consider different Quality-of-Service (QoS) categories to determine the most suitable candidates for the composition. If more than one category is used for optimisation, a multi-dimensional optimisation problem arises. This mentions similarities to similar combinatorial problems. Then, possible solutions are proposed and their performance is evaluated.

1

Introduction

3

A Web service composition is a collection of single Web services that form a new complex service. Based on a control flow description of the composition, suitable task candidates must be discovered and from these candidates the most suitable must be selected. The flow description with an assignment of concrete services can be used to parameterise an execution engine to execute the composition. The QoS can be used to define non-functional requirements for tasks and to advertise the capabilities of potential candidates. For the use with Web services, different QoS categroies have been already discussed [3]. From these categories we have chosen the maximum execution time, the cost, the reputation and the availability for our discussion. However, regarding the selection task, almost arbitrary QoS categories are possible. In our work, we will start with a brief introduction about how to calculate the QoS of a composition by aggregating the QoS of the individual services. Then, we will explain why the selection of services for compositions can be regarded as a problem and how possible solutions can be applied. The paper ends with a brief evaluation of the proposed solutions.

2

The Selection Problem

If exactly one QoS category is relevant for the selection, an algorithm chooses the candidate that offers the optimal value. The effort is linear and thus this problem is trivial. If more than one QoS category is relevant, the selection can be regarded as a combinatorial problem and is similar to the 0/1-Knapsack problem or to the Resource Constrained Project Scheduling Problem (RCPSP). 0/1-Knapsack Problem: The knapsack problem is about taking items into a knapsack with a limited capability which does not allow to take all items. Thus, a selection must be performed to identify the optimal subset. Transferred to the composition scenario we have also different QoS categories (price, value) subject for optimisation. Only ”complete” candidates can be selected, a candidate cannot be split to meet the constraint. The knapsack problem which does not allow to split items is known as 0/1-knapsack problem. The main difference of the selection of services is that a knapsack solution results in as few items as possible to keep the constraint, while for the selection a fixed number of candidates is needed. RCPSP: The selection of services can be modelled as a Multi-Mode RCPSP, which has non-regular objectives, s specific precedence relation, and no preemption allowed [6]. A trade-off couple can be formed by cost vs. another QoS category in the sense that a higher quality results in a higher cost.

A Model of QoS-Aggregation

In order to select candidates for tasks in a composition based on their individual QoS, a method is necessary to calculate the QoS for the whole composition. In a 1

Proceedings of the IEEE International Conference on Web Services (ICWS’05) 0-7695-2409-5/05 $20.00 IEEE

4

Solution Approaches

QoS Relative to Best QoS 1,00

Building onto the analogies, efficient solutions for them can be also applied to the selection problem: Greedy Selection: For a greedy selection, an algorithm chooses the service that offers the best value density which represents the overall quality of all relevant QoS categories of the service. However, global constraints required for the composition cannot be met on purpose. Discarding Subsets: This approach generates a search tree and evaluates all possible assignments in the worst case. However, the algorithm prunes subregions, if it determines that the constraint cannot be met anymore by following a particular subregion. This approach will find an optimal solution meeting the constraint, if it exists. However, it does not save any efforts in the worst case. Bottom-Up Approximation: Yang et al. have introduced an heuristic for RCPSPs which identifies a possible result and then approximates the result to an optimum [6]. The approach presumes that global constraint and optimisation criteria form a trade-off couple. For each task the candidate with the best value of the constraint QoS is assigned. If a solution exists, this is found with this step. As the next step, the algorithm replaces the firstly assigned candidates by the candidate with the next worse QoS and so on. Pattern-wise Selection: Within these two pages we cannot go into detail about the pattern-wise selection and thus we refer to a preceding paper [1]. Very briefly, the algorithm determines the best assignment considering each composition pattern in isolation. It is inspired by the fact that the greedy selection shows a poor performance for assigning candidates for parallel tasks. In a parallel arrangement, only one task may be relevant and thus optimisation of the other tasks does not result in any increase of the overall QoS. Since this algorithm operates on each pattern element, this approach cannot meet given constraints on purpose.

4.1

0,95

0,90

0,85

0,80 3

4

6 7 Number of Tasks

8

9

Best

Greedy

Bottom-Up

Discarding

Pattern

10

Figure 1. Average Delivered QoS of Different Selection Methods Relative to Best QoS The different aggregated QoS values resulting for a composition can be compared by Simple Additive Weighting (SAW) to compute a normalised score. The worst resulting QoS is delivered by the constraint selection, which does not optimise regarding the overall QoS.

5

Conclusions

We have introduced algorithms that can perform the selection of candidates to optimise the overall QoS of a composition. The results indicate that the bottom-up approximation delivers a worse overall QoS than by using the discarding subsets approach. For the optimisation without the need to meet a constraint, the pattern-wise selection also reaches almost the level of the best possible QoS. If a slight decrease of of the overall QoS is tolerable (about 5% in our test case setup), the greedy selection might deliver a fair result. The next steps will be a detailed statistical analysis of the results with more test cases.

References

Comparison

[1] Roy Gronmo and Michael C. Jaeger. Model-Driven Methodology for Building QoS-Optimised Web ServiceCompositions. In The 5th IFIP International Conference on Distributed Applications and Interoperable Systems (DAIS), Athens, Greece (accepted for publication), June 2005. [2] Michael C. Jaeger, Gregor Rojec-Goldmann, and Gero M¨uhl. Qos aggregation for service composition using workflow patterns. In Proceedings of the 8th International Enterprise Distributed Object Computing Conference (EDOC 2004), pages 149–159, Monterey, California, September 2004. IEEE Press. [3] Daniel A. Menasce. Qos issues in web services. In IEEE Internet Computing, pages 72–75. IEEE Press, November-December 2002. [4] W.M.P. van der Aalst. Don’t go with the flow: Web services composition standards exposed. Jan/Feb 2003 issue of IEEE Intelligent Systems, pages 72–76, January 2003. [5] W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, and A.P. Barros. Workflow patterns. Distributed and Parallel Databases 14(3), pages 5–51, 2003. [6] Bibo Yang, Joseph Geunes, and William J. O’Brien. Resource constrained project scheduling; past work and new directions. Technical Report Research Report 2001-6, Department of Industrial and Systems Engineering, University of Florida, 2001.

We have compared the four proposed and two additional selection methods in a software simulation: one is the global selection which evaluates always all possible combinations and the other is the constraint optimised selection. With the latter, for each task the candidate offering the best QoS constraint category is assigned. Thus, if a combination which respects the constraint exists, it is found. The implementation of the algorithm and the random generation of the candidates involve some issues, which cannot be discussed any further here. Figure 1 shows the average resulting QoS for the composition performing the selection methods for generated test compositions relative to the global selection.1 1 Please note that in both figures the discrete results are connected with interpolated lines for better visualisation only.

2

Proceedings of the IEEE International Conference on Web Services (ICWS’05) 0-7695-2409-5/05 $20.00 IEEE

5 Constraint