1 / 21

Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition

L3S Research Center University of Hanover Germany. Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition. Mohammad Alrifai and Thomas Risse The International WWW Conference – April 22 th , 2009. Introduction. QoS-aware Architecture*. Broker.

denis
Download Presentation

Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. L3S Research Center University of Hanover Germany Combining Global Optimization with Local Selection for Efficient QoS-aware Service Composition Mohammad Alrifai and Thomas Risse The International WWW Conference – April 22th, 2009

  2. Introduction QoS-aware Architecture* Broker Web service Architecture UDDI QoS Registry UDDI Find service Publish QoS Feedback Update QoS Service invocation Find service Publish Service Consumer Service provider Service invocation Service Consumer Service provider * Liu et al: QoS Computation and Policing in Dynamic Web Service Selection – in WWW 2004

  3. Dynamic Web Service Composition • Abstract representation: workflow-like languages: e.g. BPEL • Web service discovery: Matching functional requirements: e.g. credit card verification, flight booking, etc. • Web service selection: • Fulfilling Non-functional requirements: • e.g. latency, availability, price, etc. INPUT: Abstract Process WWW Discovery Alternative web services task web service QoS-based Selection OUTPUT: Executable Web Process

  4. Outline • Introduction • QoS computation model • Global vs. Local QoS Optimization • A hybrid approach • Experimental evaluation • Conclusion and future work

  5. QoS Computation Model • QoS Attributes (q): • Quantitative: e.g. price ($), availability (uptime%), response time (sec) • Positive (e.g. availability) • Negative (e.g. price) • QoS vector (Q): • Component service: Qs = {q1, q2, ..., qr} • Composite service: Qcs = {q‘1, q‘2, ..., q‘r} where q‘ is the aggregated QoS value • QoS constraints vector(C): • Local constraints: Cs = {c1, ..., cr} upper bound values for Qs • Global constraints: Ccs = {c‘1, ..., c‘r} end-to-end upper bound values for Qcs

  6. QoS Optimization Problem • Problem statement: • Given a composition requestCS = {S1, S2, ..., Sn}, • a list of service candidates for each service class Sj in CS, • a vector of m end-to-end QoS constraints Ccs = {c‘1, c‘2, ..., c‘m}, • and a utility function, • select one web service sjfor each service class Sj in CSsuch that: • (1) q‘k≤c‘k , 1 ≤ k≤m, i.e. all constraints are satisfied • (2) Overall utility is maximized • Feasible Solutions: • Any selection that fulfills (1) • Optimal Solution: • Any selection that fulfills (1) and (2)

  7. Existing Solutions I • Local QoS Optimization*: • Component services are selected independently • Service candidates are ranked by utility value • Very efficient (linear complexity) • Distributed computation • Cannot satisfy end-to-end QoS constraints Abstract services Alternative services Concrete services * Liu et al: QoS Computation and Policing in Dynamic Web Service Selection – in WWW 2004

  8. Existing Solutions II • Global QoS Optimization*: • The problem is modeled as a Mixed Integer Linear Program OUTPUT: Executable composite service INPUT: Abstract composite service Service composer Candidate Services Candidate Services Candidate Services Service Broker 1 Service Broker 2 Service Broker n QoS Registry QoS Registry QoS Registry * Zeng et al: Quality Driven Web Services Composition – in WWW 2003 * Ardagna et al: Adaptive Service Composition in Flexible Processes - in IEEE Trans. on Software Eng. 2007

  9. Existing Solutions II • Global QoS Optimization*: • Existing MILP solvers can be used to find the optimal solution • Can satisfy end-to-end QoS constraints • Inefficient: exponential complexity w.r.t. number of services • Supports only linear utility functions • Centralized computation • Re-computation is required in case of service failure * Zeng et al: Quality Driven Web Services Composition – in WWW 2003 * Ardagna et al: Adaptive Service Composition in Flexible Processes - in IEEE Trans. on Software Eng. 2007

  10. A Hybrid Approach • Our goal: a compromise between performance and optimality • Divide the problem into two sub-problems that can be solved more efficiently than the original problem Global QoS constraints Constraint Decomposition Local QoS constraints Step1 (Global optimization): each global QoS constraint is decomposed into a set of local constraints Local Selection Local Selection Local Selection QoS Registry QoS Registry QoS Registry Step2 (Local Optimization): the best service candidate that satisfies local constraints is selected

  11. Decomposition of QoS Constraints I • A non-trivial task • Different service classes can have different distributions of QoS values • Proposed approach: • Extract quality levels for each class based on local characteristics • Map global constraints into local quality levels, such that: • Selected quality levels serve as conservative local constraints • Local constraints are relaxed as much as possible

  12. Decomposition of QoS Constraints II • Extracting Quality levels of service class Sj: • , divide the QoS value range into d sub-ranges • Randomly select one value qkz from each sub-range, 1 ≤ z ≤ d • Assign each level qkz a value pkz between 0 and 1, which estimates the benefit of using this level as local constraint: Quality Levels

  13. Decomposition of QoS Constraints III • Mapping global QoS constraints into local quality levels: • using Mixed Integer Linear Programming • Objective function: • A binary variable xjkz for each quality level qjkz: • Objective function: • Constraints:

  14. Local Selection I • Local constraints are sent to service brokers to perform local selection INPUT: Abstract composite service OUTPUT: Executable composite service Service composer Service composer Best local candidate 1 Local constraints Best local candidate n Local constraints Local constraints Quality levels Best local candidate 2 Quality levels Quality levels Service Broker 1 Service Broker 2 Service Broker n Service Broker 1 Service Broker 2 Service Broker n QoS Registry QoS Registry QoS Registry QoS Registry QoS Registry QoS Registry Step 2: Local selection of best candidates Step 1: Decomposition of global QoS constraints

  15. Local Selection II • Filtering: • Service brokers filter out services that violate local constraints • Ranking (Simple Additive Weighting method): • Normalization:relative distance to worse value • Weighting: represents user priorities • wk = weight(qk), 0 ≤ wk ≤ 1 , ∑ wk =1

  16. Local Selection III QoS attributes normalization Service candidates weighting Utility values sum Service Candidates

  17. Experimental Evaluation • Evaluation methodology • Two datasets: Real dataset (QWS*) and synthetic dataset (normally distributed) • Random assignment of services to classes • Given a set of global QoS constraints select the best component services using: • Global optimization approach (Mixed-Integer Linear Programming) • Our hybrid approach • Measure the performance of both approaches (computation time) • Measure the distance to optimal results: • optimality (%) = utility of obtained solution / utility of optimal solution * Al-Masri et al: Investigating web services on the world wide web-in WWW2008

  18. Results I

  19. Results II

  20. Conclusion and Future Work • We have proposed a scalable service selection method that is able to achieve close-to-optimal results with low cost and can be implemented in a distributed infrastructure. • The idea: divide the problem into two sub-problems: • Constraint decomposition: solved by global optimization • QoS optimization: solved by guided local selection • Next steps: • Developing adaptive methods for determining quality levels • Scalability with respect to num. of service classes

  21. Thank you! Mohammad Alrifai (alrifai@L3S.de) Thomas Risse (risse@L3S.de)

More Related