Title: A Probabilistic QoS Model and Computation Framework for Web Services-Based Workflows
1 - A Probabilistic QoS Model and Computation
Framework for Web Services-Based Workflows - San-Yih Hwang, H. Wang, J. Srivastava
- National Sun Yat-sen U., Taiwan
- Univ. of Minnesota, USA
2Overview
- Introduction
- QoS metrics and modeling
- WS-Workflow QoS Computation
- Performance evaluation
- Conclusions
3Web Service based workflows
- Web Service a modular and self-described
application that uses Web technologies to
interact with other services. - Workflow a process by which a series of
activities are executed in a specific sequence. - WS-Workflow (composite web service) a workflow
of activities, each of which is wrapped as a web
service. - e.g., a Travel Planner may aggregate multiple
Web services for flight booking, travel
insurance, accommodation booking, car rental,
etc. - Quality of Service (QoS) non-functional measures
of a service, which often decides the
satisfaction of a user toward the service .
4Web service QoS Category Instance-level QoS Metrics Service Classes Metrics System-level QoS Metrics
1. Performance Response time time elapsed from the submission of a request to the time the response is received Throughput the number of instances completed per time unit
2. Resources Cost the amount of money paid for executing an instance Memory/CPU/ bandwidth
3. Dependability Reliability The probability that the service can be successfully completed. Availability The probability that a service can be successfully invoked. TTR time to repair
3. Dependability Reliability The probability that the service can be successfully completed. Availability The probability that a service can be successfully invoked.
4. Fidelity Reputation rating, usually measured as a scalar value (e.g., 1, 2, 3, 4, 5, the higher the better)
5. Transactional properties ACID properties
5. Transactional properties Commit protocol (e.g., 2PC)
6. Security Confidentiality
6. Security Nonrepudiation
6. Security Encryption
5The problem
- The goal is to compute the QoS measures of a
WS-workflow from those of its constituent web
services. - Four instance_level QoS metrics are considered
- Response time the time elapsed from the
submission of a request to the time the response
is received . - Cost amount of money paid.
- Reliability the probability that the service can
be successfully delivered. - Fidelity reputation rating.
- How do we represent a QoS measure of a web
service? - A single value, used by most of the previous
researches - A probability distribution, adopted by us
6The problem (Cont.)
W (parallel)
- Why not using a single value for a QoS measure of
a web service? - Instance-level QoS measures are inherently
probabilistic. - Choosing a single value for a QoS measure (e.g.,
average case) may yield incorrect result.
A1
A2
- Response time of A1 N(10, 10)
- Response time of A2 N(10, 10)
- Average response time of W is NOT 10.
7The problem (Cont.)
W (conditional)
- Why not using a normal distribution for modeling
each QoS measure of a Web service? - Some QoS measure may not follow normal
distribution. - Even if the QoS measures of all activities follow
normal distribution, the QoS of a WS-workflow may
not follow normal distribution, e.g., parallel,
conditional selection
A1
0.5
0.5
A2
- Response time of A1 N(10, 5)
- Response time of A2 N(20, 5)
8Probabilistic Modeling of WS QoS
- A QoS measure of a web service is modeled as a
discrete random variable. - Probability Mass Function (PMF)
- Let the sample space of X be Dom(X), then
- e.g. Suppose the probabilities of a web service w
being completed in one, two, and three days, are
0.2, 0.6, and 0.2, respectively. The PMF of its
response time is - fresponse_time(w)(1)0.2
- fresponse_time(w) (2)0.6
- fresponse_time(w) (3)0.2
9WS-workflow QoS framework
WS invocation log
Web services
WS-workflow QoS Framework
WS selection
WS-workflow QoS Model
WS-workflow QoS Computation
WS-workflow enactment
WS SLA spec
WS-workflow QoS Objective Spec
WS-workflow QoS Monitoring
invokes
owner
user
10Computing QoS Values of WS Compositions
- A structured workflow can be constructed
recursively by the following 5 basic constructs. - Sequential
- Parallel
- Conditional
- fault-tolerant
- Loop
11Sequential
-
- Cost
- Time
- Reliability
- Fidelity
a1
a2
an
12 Parallel
a1, a2, , an are executed concurrently.
13Conditional
Only one of the activities is executed.
,
14 fault-tolerant
All the activities are executed concurrently, but
only one of them need to be finished.
is the probability that ai is finished first.
15Loop
- We model the number of iterations as a discrete
random variable, e.g. 1 time with probability
0.3, and 2 times with probability 0.7. - It can be converted to a equivalent conditional
structure.
16Operations of discrete random variables
- Basic operations
- Sum
- Multiplication
- MAX
- MIN
- Conditional selection
- Let X, Y be independent random variables
- Dom(X)x1, x2, , xm , PMF fX(x)
- Dom(Y)y1, y2, , yn , PMF fY(y)
17ZXY
Dom(X)1, 2, fX(1)0.3, fX(2)0.7 Dom(Y)1
0, 20, fY(10)0.4, fY(20)0.6 Dom(Z)11, 12,
21, 22 fz(11)0.30.40.12, fz(12)0.70.40.28
fz(21)0.30.60.18, fz(12)0.70.60.42
Note Multiplication is similar, except that z is
the product of some x and y.
18ZMax(X, Y)
Note MIN operation is very similar to MAX.
19Conditional selection
- exclusive
selection of a random variable according to the
associated probabilities. - pi the probability that Xi is selected.
20An example WS-workflow
21 Tree representation of a workflow
- A structured workflow can be represented by a
tree. - A composite activity can be substituted by an
equivalent atomic activity. - Use bottom-up method to compute the Workflow QoS.
22Sample space reduction
- When combining the random variables, the sample
space size of the resultant variable may increase
dramatically. - To keep the sample space at a reasonable size
after some operation, we have to group the
elements in the sample space. Each group is
represented by one value. - Find an optimal grouping scheme which minimizes
the error.
23The optimal solution
- Dynamic programming
- Let e(i, j, k) be the optimal aggregate error of
partitioning xi, xi1, , xj into k subsequences.
- Recursive function
-
-
-
if j-i1gtk and kgt1 - e(i, j, k) 0 if j-i1k
- e(i, j, 1) error(i, j).
- Time complexity O(s3m2), where s is the number
of elements in the original domain and m is the
number of elements in the domain after reduction.
24Heuristic method
- Algorithm
- Find the pair of adjacent elements in the domain
which has least error when merged. - Replace the two elements by a new element.
- Repeat until the reasonable size is reached.
- Priority queue can be used to find the pair of
samples with least error in O(logs) time. - Time complexity O(slogs)
25Performance evaluations
- Sample space size reduction
- Performance metric cumulative distribution
function (CDF). The CDF of Z, denoted as FZ(z),
is defined as Pr(Z?z) - The following figure shows the difference of CDFs
of each method (DP and greedy methods ) and the
theoretical value when the size of PMF is
reduced from 400 to 30. - Mean error
- DP 0.001494, Greedy 0.002136
-
-
-
26Response time accuracy
- Computation of response time of the experimental
WS-workflow PC order fulfillment.
activity Mean Standard deviation minimum maximum Probability
HDD Proc. 1 2 1 1 4 0.8
HDD Proc. 2 3 1.5 1 5 0.2
CPU Proc. 2 0.8 1 4 N/A
CD-ROM Proc. 2 0.7 1 4 N/A
Assembly 2 0.5 1 3 N/A
Test 1 0.2 0.5 2 N/A
FixTest 0.5 0.2 0.1 1 N/A
Shipping 1 0.2 0.5 2 N/A
Email notification 0.6 0.2 0.2 1 N/A
Phone notification 0.5 0.2 0.1 1 N/A
27Response time accuracy
- The following figure show the difference between
the CDF of the greedy method and simulation
result. - Maximum error 0.008
- The greedy method is a thousand times faster than
the simulation. -
-
-
-
-
-
28Cost accuracy
Activity Mean Standard deviation minimum maximum
HDD Proc. 1 100 6 80 120
HDD Proc. 2 110 10 80 130
CPU Proc. 150 5 130 160
CD-ROM Proc. 80 10 60 100
Assembly 20 3 10 30
Test 15 5 10 20
FixTest 10 3 5 20
Shipping 25 4 15 40
Email notification 1 0.5 3 5
Phone notification 2 1 1 3
29Fidelity accuracy
1 2 3 4 5
HDD Proc. 1 0.006644 0.064938 0.259001 0.410416 0.259001
HDD Proc. 2 0.122595 0.233026 0.288758 0.233026 0.122595
CPU Proc. 0.027104 0.111310 0.259135 0.343315 0.259135
CD-ROM Proc. 0.153398 0.221476 0.250254 0.221476 0.153398
Assembly 0 0.001302 0.157605 0.683489 0.157605
Test 0 0.001302 0.157605 0.683489 0.157605
FixTest 0.006200 0.196167 0.595267 0.196167 0.006200
Shipping 0.022031 0.139256 0.349728 0.349728 0.139256
Email notification 0 0 0.369433 0.629267 0.001300
Phone notification 0 0 0.047833 0.904333 0.047833
30Related work
- Estimating the QoS measures of a WS-workflow by
assuming a single QoS value for each web service.
Menace02 Cardoso02 Zeng03. - Estimating the QoS measures of a WS-workflow
using simulation Gillmann02Cardoso02 - Project management (CPM/PERT) for estimating
response time
31Summary
- We propose a probability-based WS-workflow QoS
model and its computation framework. - The computation framework is efficient and
accurate.
32Ongoing work
- Online QoS monitoring
- Online QoS estimation for a WS-workflow instance
- Pre-computation is needed for efficiency.
- Defining and ensuring QoS objective
- A QoS objective is a 5-tuple. E.g., (PC order
fulfillment, response time, no larger, 7
days, 90) - Define a checkpoiont for each atomic web service.
33Ongoing work
- Web service selection
- Each activity has a set of candidate web services
that provide the same function but different QoS
measures. - Choose a web service for each activity such that
some constraints are satisfied and the goal is
optimized. Both constraints and the goal are
specified in a probabilistic manner - E.g., The probability that the entire WS-workflow
can be completed in 10 days is at least 90.