Optimal service selection policies for dynamic service composition - - PowerPoint PPT Presentation

optimal service selection policies for
SMART_READER_LITE
LIVE PREVIEW

Optimal service selection policies for dynamic service composition - - PowerPoint PPT Presentation

Optimal service selection policies for dynamic service composition Miroslav ivkovi University of Amsterdam (UvA) System and Network Engineering Group m.zivkovic@uva.nl Joost Bosman, Hans van den Berg, Rob van der Mei, Erik Meeuwissen,


slide-1
SLIDE 1

Optimal service selection policies for dynamic service composition

Miroslav Živković University of Amsterdam (UvA) System and Network Engineering Group m.zivkovic@uva.nl Joost Bosman, Hans van den Berg, Rob van der Mei, Erik Meeuwissen, Rudesindo Núñez-Queija

slide-2
SLIDE 2
  • M. Živković, J. Bosman, H. van den Berg, R. van der

Mei, H. Meeuwissen, R. Núñez-Queija: Run-time Revenue Maximization for Composite Web Services with Response Time Commitments (AINA 2012)

  • M. Živković, H. van den Berg: Revenue Optimization
  • f Service Compositions using Conditional Request

Retries (IJWSR 2013)

slide-3
SLIDE 3

Task 1 Task 3 Task 2 Services implementing task 1 Services implementing task 2 Services implementing task 3

Service B

t:

p: Service X

t: p: Task 4

Service Y

t: p:

Service A

t: p:

Service K

t: p:

Service α

t: p:

Service β

t: p: Services implementing task 4

Service Composition problem

Given abstract workflow select concrete services to execute it

slide-4
SLIDE 4

Service composition

  • We focus on orchestration
  • At design time (multi-objective problem)

– Choices made upfront; non-dominated, Pareto-optimal solutions – Inflexible; impossible to modify on-the-fly

  • At execution time:

– Composition choices are made on-the-fly, flexible

slide-5
SLIDE 5

What if performance worsens?

  • Runtime service selection
  • Runtime service substitution
slide-6
SLIDE 6

Runtime service selection: Model

CS1(1) CS1(2) CS1(3) CS2(1) CS2(2) CS2(3) CS2(4) CS3(1) CS4(1) CS4(2)

request 1 composition: CS1(2)-CS2(2)-CS3(1)- CS4(1) request 2 composition

request 1 response 1 response 2 request 2

Runtime service selection

  • Sequential workflow
  • Composition may be adapted during execution (per request/task)
  • Use of elapsed time info
slide-7
SLIDE 7

The orchestrator

  • knows the workflow
  • selects appropriate services
  • makes appropriate Service Level Agreements (SLAs)

with 3rd party providers and its clients

  • has no impact to or control of 3rd party domains
  • End-to-end SLA
  • response time deadline (𝜀𝑞)
  • Reward when response time ≤ 𝜀𝑞, penalty otherwise
  • Single service SLA

– Execution cost, response time distribution

slide-8
SLIDE 8

Optimized dynamic decisions

  • Given

– Position in workflow – Remaining time until deadline – Response time distributions – Costs, reward and penalty

  • Decision

– what service alternative to select based on the elapsed time?

  • Goal

– Optimize expected revenue

  • Solution Apply Dynamic Programming

i=1 i=2 i=3 i=4

CS1(1) CS1(2) CS1(3) CS2(1) CS2(2) CS2(3) CS2(4) CS3(1) CS4(1) CS4(2)

? Δ

slide-9
SLIDE 9

Lookup Table

Policy t (time budget)

{ { { {

Dp Overall deadline 5 10 15 Abstract service at position 1 Abstract service at position 2 Abstract service at position 3 Abstract service at position 4 Concrete service alternative 1 Concrete service alternative 2 Concrete service alternative 3 Concrete service alternative 4

  • Simple solution
  • Calculate lookup table off-line
  • Apply lookup table on-line (no computing)
slide-10
SLIDE 10

a b c d e f g h i j k l m n o p q r s t u v w x 10 20 30 40 50

E[Revenue]

A B C D E F G

DP SW

a b c d e f g h i j k l m n o p q r s t u v w x Position 1 4 4 4 4 2 1 3 3 2 3 3 1 4 4 2 1 2 1 2 3 3 1 2 1 Position 2 2 3 3 1 4 4 4 4 3 2 1 3 2 1 4 4 1 2 3 2 1 3 1 2 Position 3 3 2 1 3 3 3 2 1 4 4 4 4 1 2 1 2 4 4 1 1 2 2 3 3 Position 4 1 1 2 2 1 2 1 2 1 1 2 2 3 3 3 3 3 3 4 4 4 4 4 4

Dynamic Static

Example workflow, 4 tasks

slide-11
SLIDE 11

CS1(1) CS3(1) CS4(1) CS5(1)

K

WS3

f1,1; c1,1 p4 p5

CS2(1)

AWS2,3 AWS4,5 AWS6

CS1(2)

f3,1; c3,1

CS3(2) CS3(3) CS2(2)

f2,1; c2,1

CS1(1) CS5(2)

f5,1;c5,1 f4,1; c4,1 f6,1 ; c6,1

Issue 1: sequential workflow

slide-12
SLIDE 12

CS1(1) CS1(2) CS1(3) CS2(1) CS2(2) CS2(3) CS2(4) CS3(1) CS4(1) CS4(2)

request 1 composition: CS1(2)-CS2(2)-CS3(1)-CS4(1) request 2 composition

request 1 response 1 response 2 request 2 A B C D

Issue 2 - availability

slide-13
SLIDE 13

request 1 response 1 retry

A B C D 𝐷𝑇1

3

𝐷𝑇2

3

θ 𝐷𝑇1

2

𝐷𝑇2

2

𝐷𝑇3

2

𝐷𝑇1

1

𝐷𝑇1

4

𝐷𝑇2

4

θ'

retry request 2 response 2

Runtime service substitution: Model

  • For an orchestrated service, at each decision point (A, B, C, D)
  • a) which service should be selected?
  • b) when is it optimal to perform substitution
  • c) which service should be selected for a retry, same or some
  • ther?
  • with the goal to maximize end-to-end expected revenue for

given deadline

slide-14
SLIDE 14

Response-time: when does a substitution make sense?

  • Heavy-tailed response time distributions
  • Expectation paradox: “the longer we have waited,

the longer we should expect to wait”

  • Bimodal/Multimodal distributions
  • Substitute by any given service
  • This does not involve the costs
slide-15
SLIDE 15

Optimal solution

  • Use dynamic programming to calculate the policy:
  • Compare the expected revenues with and without retry
  • Formulae for case when single retry per each task is allowed
  • Task i, service j, deadline 𝜀, retry moment 𝜄, response time

distribution f, F, revenue W

  • term 1: execution cost; term 2 – no retry needed; term 3 –

retry made

slide-16
SLIDE 16

Runtime service substitution - conclusions

  • For larger values of deadlines, policies with or

without retries are close

  • Perform substitution for the last tasks

– Cost plays a role: the more you pay the less substitutions you should perform

slide-17
SLIDE 17

Issue 3 – time invariant PDF: Closed loop control

  • For each alternative response time distribution: keep last n samples
  • Calculate empirical distribution(s)
  • Apply DP on empirical distributions

Challenges

  • 1. We do not prefer updating the policy after each realization
  • 2. When a certain alternative is never selected we don’t observe

changes Solutions

  • 1. Apply statistical test to see weather an empirical distribution has

changed significantly

  • 2. If a service is not used for (specified) time interval send a probe

request (and pay corresponding cost);

  • Tradeoff: short interval (good + expensive) vs. large interval
slide-18
SLIDE 18

Thank you!