flexible provisioning of service workflows sebastian stein supervisors: nick jennings terry payne...
Post on 03-Jan-2016
216 Views
Preview:
TRANSCRIPT
Flexible Provisioningof Service Workflows
Sebastian Stein
Supervisors:
Nick JenningsTerry Payne
KEG Seminar, Aston University
4th March 2008
Flexible Provisioning of Service Workflows
Agenda
Background & Motivation
Flexible Service Provisioning
On-Demand Invocation Advance Agreements
Conclusions
2
Background & Motivation
Flexible Provisioning of Service Workflows
4
Background
Computer systems are increasingly distributed: E-commerce
Source: National Statistics Website, http://www.statistics.gov.uk/downloads/theme_economy/ecommerce_report_2004.pdf
Use of Internet for purchases in UK businesses
0
10
20
30
40
50
60
70
80
Large businesses (1000+ empl.) All businesses
%
2002
2003
2004
Flexible Provisioning of Service Workflows
5
Background
Computer systems are increasingly distributed: E-commerce High performance computing
Flexible Provisioning of Service Workflows
6
Service-Oriented Computing
Distributed agents offer their capabilities as computer services, which are high-level behaviours that can be procured by consumers in order to achieve their objectives. These include:
Traditional business services (e.g., ordering components, making logistic arrangements, booking a flight ticket),
Computational services (e.g., data analysis, transformation and communication),
Information services (e.g., yellow pages, weather forecast, financial data).
Flexible Provisioning of Service Workflows
7
Workflows
Services are rarely used in isolation. Usually, they form the building blocks for more complex
applications.
Definition: A workflow is a collection of tasks and their dependencies.
Flexible Provisioning of Service Workflows
8
Taverna Workflow (myGrid)
Source: Exploring Williams-Beuren Syndrome Using myGrid, Hannah Tipney , http://www.mygrid.org.uk/wiki/pub/Mygrid/PresentationStore/ISMB04_Glasgow.ppt
Flexible Provisioning of Service Workflows
9
Pegasus Workflow
Source: Pegasus Teragrid Talk SC2005 Seattle Washington, http://pegasus.isi.edu/pegasus/presentations/pegasus-tg-final.ppt
Flexible Provisioning of Service Workflows
Service Provisioning
10
Services are dynamically provisioned (selected) by consumers at run-time.
Services are provided by autonomous agents. These may be unreliable (may fail or take longer than
expected)… …and heterogeneous.
$100
24 h
-$20
-$10
-$5
-$25
Failure!Failure!
ValueValue
DeadlineDeadline
Flexible Provisioning of Service Workflows
11
Problem Statement
How to design a service consuming agent able to deal effectively and efficiently with unreliable and heterogeneous service providers when executing complex workflows.
Flexible Provisioning of Service Workflows
Related Work
Many current approaches concentrate on functional aspects of services and assume their behaviour to be deterministic.
Some work explicitly considers service failures: Exception handling (e.g., fault handlers in WS-BPEL), Fixed redundancy (e.g., SETI@home, replicated Web services), Retry and timeout policies (Zeng 2005, Erradi 2006), Non-functional service constraints (McIlraith and Son 2002).
These require significant manual input!
12
Flexible Provisioning of Service Workflows
Related Work (Quality-of-Service Optimisation)
13
Local task QoS optimisation (Zeng 2004): For each task, provision the provider that optimises some property for
that task (e.g., cost, reliability, duration).
Global workflow QoS optimisation (Zeng 2003, Yu/Lin 2005): Provision one provider for each task, so that a weighted sum of global
performance characteristics is optimised:
Adaptive variants re-provision upon failure (Canfora 2005).
But: These do not reason explicitly about failures, rely on manually specified weights and constraints, and select single provider for each task.
Flexible Provisioning
On-Demand Invocation
Flexible Provisioning of Service Workflows
Central Idea
How to address uncertainty during provisioning?
15
Existing work mostly relies on single service for each workflow task.
We can do better by exploiting parallel and serial redundancy.
… and by taking into consideration service heterogeneity.
Flexible Provisioning of Service Workflows
Service Model
16
We devised an abstract model to describe a service-oriented system.
Assumptions:
Assume silent “crash” failures. Providers paid on invocation. Failures and durations are
independent. Free disposal of redundant services
(but cost still incurred!)
Utility function:
• Cost: c(s1) = £100• Failure Prob.: f(s1) = 0.01• Duration:
Flexible Provisioning of Service Workflows
17
Flexible Strategy
We want to find a provisioning allocation for each task, e.g.:
This is an optimisation problem:
Expected rewardExpected cost
Flexible Provisioning of Service Workflows
Why is this difficult?
18
Intuitively, Combinatorial problem:
Difficult objective function (probabilistic durations).
Based on this, we can show that provisioning is inherently hard...
Flexible Provisioning of Service Workflows
Provisioning
Provisioning Problem
19
Knapsack(NP-
complete)
PERT CDF(#P-
complete)
PROVCDF ptPROVKS p
m
Provisioning is NP-hard Provisioning is #P-hard
Big problem as we wanted efficient methods for realistic workflows!
Flexible Provisioning of Service Workflows
20
Flexible Strategy
Approximate the expected utility of an allocation using a heuristic utility function:
Optimise this with local search.
Estimated utility
Success probabilityEstimated workflow duration pdf
Estimated costReward function
Flexible Provisioning of Service Workflows
Local Task Calculations
We start by calculating a number of performance parameters for each task in the workflow:
21
Success Probability: 95.00%Expected Cost: £30.00Expected Duration: 60.50 minVariance: 361.19 min2Success Probability: 96.83%Expected Cost: £7.23Expected Duration: 75.59 minVariance: 4030.84 min2
Cost: £1 £30
Success:
25% 95%
Duration:
Exp(80)
Gamma(10,6)
2 Service populations:
Success Probability: 99.99%Expected Cost: £26.15Expected Duration: 56.23 minVariance: 1501.57 min2
Flexible Provisioning of Service Workflows
Global Workflow Calculations
These task parameters are then combined to estimate the overall expected profit:
22
Global Parameters:Success Probability: 68%Estimated Cost: £98.40Estimated Duration: 132 minVariance: 912 min2
100%
95%
80%
99%
100%
90%
£24
£10
£3 £42
£5
£30
52
30
22
15
43
7
345
266
164 292
25
111
98.40 0.68 383.64
= 162.48
Flexible Provisioning of Service Workflows
Empirical Evaluation
To test the strategy, we compare it to a number of benchmarks:
Naïve: Provisions a single provider for each task. Models current approaches that do not consider service
unreliability.
Global QoS: Optimises weighted QoS measures over entire workflow (set all wi=1/3, use maximum utility and zero reward time as budget/time constraints).
Adaptive Global QoS: As above, but also uses timeouts and re-provisions dynamically.
Local QoS: Optimises weighted QoS measure for each task.
23
Flexible Provisioning of Service Workflows
Empirical Evaluation
24
Flexible Provisioning of Service Workflows
Empirical Evaluation
25
Flexible Provisioning of Service Workflows
Empirical Evaluation
26
Flexible Provisioning of Service Workflows
Empirical Evaluation
27
Flexible Provisioning of Service Workflows
Empirical Evaluation
28
Flexible Provisioning of Service Workflows
Further Results
We can compare our performance to an optimal strategy for very small workflows (3 tasks!). Achieves around 98% of optimal utility.
Results indicate that our strategy is robust to inaccurate information (with errors up to 10-15%). Beyond that, generally degrades gracefully, but problems when expected utility very low.
Trends hold on larger workflows (tested up to 1000 tasks).
29
Flexible Provisioning of Service Workflows
So far…
We have proposed a flexible provisioning strategy that deals with uncertain service providers: By provisioning multiple providers redundantly for critical tasks. By re-provisioning services that seem to have failed. By exploiting the heterogeneity of providers.
Our strategy outperforms the state of the art in flexible service provisioning.
But so far, our strategy: Assumes that service populations are static throughout
execution. Assumes that services are always invoked on demand. Does not adapt to new information during execution.
30
Flexible Provisioning
Advance Agreements
Flexible Provisioning of Service Workflows
Advance Provisioning
Increasingly, services will be offered in the context of pre-negotiated agreements (this is already emerging in computational Grids).
The agreements form a contract about when and how a service will be provided in the future.
32
I need service X in 2 hours.I need service X in 2 hours.
Reservation Cost: £20Invocation Cost: £10Start time: 2:00Completion time: 2:30
Flexible Provisioning of Service Workflows
Advance Provisioning
Performance characteristics might vary depending on time of provisioning (e.g., airline pricing policies):
33
Contract Term On-Demand
1h Advance
12h Advance
Cost £10 £5 £15
Duration 45min 20min 10min
Failure Probability
10% 2% 0.1%
Flexible Provisioning of Service Workflows
Modified System Model
34
Providers
0 100 200 300
Model a dynamic market:
Each time step: Providers post offers, according to some
stochastic process. Consumer provisions offers. Offers disappear (acquired by other
consumers or withdrawn).
Consumer
Service Type: T1
Start Time: 200
End Time: 220
Reservation Cost: £1Execution Cost: £5Penalty: £20Failure Probability: 10%Defection Probability:
50%
Flexible Provisioning of Service Workflows
Challenges
Future availability of offers uncertain.
Fixing advance agreements may mean that reservations costs are lost if preceding services fail.
Need to balance benefits of advance provisioning with risk!
35
Flexible Provisioning of Service Workflows
Our Approach
Gradual Provisioning:
First make high-level provisioning decisions (how and when to provision tasks).
Follow these at run-time. Adapt strategies when failures occur.
36
High-level decision
Provisioned
Completed
Failure
Flexible Provisioning of Service Workflows
High-Level Decisions
Assume we have a set of atomic provisioning strategies for each service type:
Performance statistics of strategies are learnt offline by observing the market.
37
Service Types
Strategies
……
Strategy w:• Advance time• Number of offers• Selection strategy
Expected performance:• Reservation cost• Execution cost• Failure probability• Duration (if successful)• Duration (if failed)• Variances of above
Flexible Provisioning of Service Workflows
Contingency Planning
Atomic strategies represent single attempt at completing a task.
We can build simple plans from several such strategies to deal with failures:
38
Try strategy x(e.g., cheapest offer, 10 min in advance)
Success? Doneyes
Try strategy y(e.g., 2 most reliable offers, immediately)
no
Success?no Doneyes
Expected task performance:• Success probability• Reservation cost• Execution cost• Duration• Variance
Flexible Provisioning of Service Workflows
Overlapping Provisioning
Finally, associate a late probability pl with each task plan. This indicates when services should be provisioned.
Higher pl results in less delays when provisioning in advance, but also increases probability that provisioned offers are lost when preceding tasks overrun.
Use heuristic based on critical path to estimate delays and to determine during which task to provision.
39
tx-2tx-2 tx-1
tx-1 txtx
pl = 0.0
provision after tx-1
tx-2tx-2 tx-1
tx-1 txtx
pl = 0.05
provision during tx-1
tx-2tx-2 tx-1
tx-1 txtx
pl = 0.1
provision after tx-2
Flexible Provisioning of Service Workflows
Strategy Summary
Given a high-level plan and late probability for each task, estimate utility in a similar manner as for on demand invocation, but include delays and reservation costs.
Optimise this using simulated annealing.
At run-time, follow task strategies, then incorporate information about provisioned offers and adapt strategy accordingly.
40
Create initial strategy S
Start of time step:Update S with outcomes
Optimise S
Realise high-level decisions
Was S altered in previous step?
yes
no
ExpectedUtility of S > 0?
Abandon workflow
no
Provision chosen servicesyes
Invoke due services
Flexible Provisioning of Service Workflows
Empirical Evaluation
Small 8-task workflow with 5 service types.
Offer characteristics drawn from uniform distributions.
Comparison with three benchmark strategies: Global QoS Adaptive Global QoS Local QoS
Also assume services always provide refunds for failures.
41
Flexible Provisioning of Service Workflows
Empirical Evaluation
42
Flexible Provisioning of Service Workflows
Empirical Evaluation
43
Flexible Provisioning of Service Workflows
Empirical Evaluation
44
Flexible Provisioning of Service Workflows
Empirical Evaluation
45
Flexible Provisioning of Service Workflows
Conclusions
We proposed a novel algorithm that uses redundancy and dynamic re-provisioning to deal with uncertain service providers.
It does this in a flexible way by reasoning about service behaviours in the context of a decision-theoretic framework.
We first showed how it applies to scenarios where services are invoked on-demand, then extended it to environments with advance agreements.
In most scenarios considered, our strategy outperforms the state of the art in service provisioning.
46
Flexible Provisioning of Service Workflows
Future Work
Improved prediction of workflow durations.
More expressive workflow models with branches and loops.
Consider more dynamic environments.
Incorporate meta-reasoning about time spent on optimisation.
47
Flexible Provisioning of Service Workflows
Bibliography
Presented work from: Stein, Jennings, Payne (2007). Provisioning Heterogeneous and Unreliable Providers
for Service Workflows. In: AAAI-07. pp. 1452-1458. Stein, Jennings, Payne (2008). Flexible Service Provisioning with Advance
Agreements. In: AAMAS-08. (in press).
Related work on homogeneous providers: Stein, Payne, Jennings (2008). Flexible Provisioning of Web Service Workflows. In:
ACM Toit 8(4). (in press).
Other related work on QoS-based optimisation: Zeng et al (2003). Quality driven web services composition. In: WWW-03. pp. 411-
421. Zeng et al (2004). QoS-Aware Middleware for Web Services Composition. In IEEE
Soft. Eng. pp. 311-327. Yu and Lin (2005). Service Selection Algorithms for Composing Complex Services
with Multiple QoS Constraints. In: ICSOC-05. Canfora et al (2005). QoS-Aware Replanning of Composite Web Services. In: ICWS-
05. pp. 121-129.
48
top related