Upload
hila
View
48
Download
0
Embed Size (px)
DESCRIPTION
Ensuring Consistent Termination of Composite Web Services. An Liu 1,2,3 and Qing Li 2,3 1 Department of Computer Science and Technology University of Science & Technology of China (USTC), Hefei, China 2 Joint Research Lab of Excellence - PowerPoint PPT Presentation
Citation preview
1June 10, 2007, IDAR’07, Beijing, China
Ensuring Consistent Termination of Composite Web Services
An Liu1,2,3 and Qing Li2,3
1 Department of Computer Science and Technology
University of Science & Technology of China (USTC), Hefei, China
2 Joint Research Lab of Excellence
CityU-USTC Advanced Research Institute, Suzhou, China
3 Department of Computer Science
City University of Hong Kong (CityU), Hong Kong, China
2June 10, 2007, IDAR’07, Beijing, China
Outline
Problem Statement and Background Problem Modeling and Methodology Framework Conclusion and Future Work
3June 10, 2007, IDAR’07, Beijing, China
Web Services CompositionClient App Travel Agent
Booking Request
Hotel Res. OK
Tim
eline
Web Services
Flight TaxiHotel
Flight RequestHotel RequestTaxi Request
Flight Res. OK
Taxi Res. OK
Booking Response
Hotel CancellationTaxi Cancellation
Reliable Composition Needs Transactional Support!
4June 10, 2007, IDAR’07, Beijing, China
ACID Transaction Insufficient
Composite web services Last for hours or days Work in an open environment Cross administrative boundaries
ACID transaction is insufficient Trust and timeliness no longer apply
Compensation-based transaction No common transaction semantics
5June 10, 2007, IDAR’07, Beijing, China
Some Representative Related Work Transaction semantics declaration
Mikalsen et al. (2002): declare transaction semantics at operation level and transactional property at service level
Transactional property (TP) deduction Vidyasankar and Vossen (2004): deduct TP of composite services
from TP of component services Different Atomicity Requirements
Fauvet et al. (2005): support flexible atomicity through TP-based service selection
Bhiri et al. (2005): verify Accepted-Termination-States (ATS) based atomicity by some transactional rules
Montagut and Molva (2006): support ATS-based atomicity through TP-based service selection and automatic coordination
6June 10, 2007, IDAR’07, Beijing, China
State of the Art
Current research has Defined TP of web services
Guaranteed Reliable Service Composition in the context of heterogeneous TP
Autonomy of services was overlooked Compensation has temporal and cost
constraints (Benatallah et al. 2004) e.g., deadline of hotel reservation cancellation
7June 10, 2007, IDAR’07, Beijing, China
Problem Statement
How to get reliable composition when both autonomy and heterogeneity are considered?
Given The control flow of a composite service Component services with heterogeneous TP Temporal constraints of compensation
How to get reliable composition where the composite service will terminate in a consistent state?
8June 10, 2007, IDAR’07, Beijing, China
Outline
Problem Statement and Background Problem Modeling and Methodology Framework Conclusion and Future Work
9June 10, 2007, IDAR’07, Beijing, China
Definitions
Transactional Property (TP) of web services Compensatable (c): normal operation (on) and
compensation operation (oc)
Retriable (r): Only normal operation Pivot (p): Only normal operation
Temporal property of operations Execution time (tx): e.g., 5 seconds
Available time (ta): e.g., [9am, 5pm] Deadline: Maximal Compensatable Time (MCT) For compensation op, ta=[t, t+MCT]
10June 10, 2007, IDAR’07, Beijing, China
Definitions (cont.)
Service s: 5-tuple(tp, on, oc, t, sta) tp{r, c, rc, p} on & oc : normal and compensation operation
t = (ts, te): starting and ending time sta{initial, active, completed, aborted, failed, cancelled,
compensated}: current state
Process: G(Vt, Vo, E) Vo : set of control flow op. (cfo), where cfo{AND-split, AND-
join, XOR-split, XOR-join, OR-split, OR-join, start-loop, end-loop}
G(Vs, Vo, E): an instance of process G(Vt, Vo, E)
11June 10, 2007, IDAR’07, Beijing, China
Consistent Termination Condition A composite service sc will always terminate
in a consistent state if the consistent termination condition (CTC) holds:
vi.tp{c, rc}, sc.t.te vi.oc.ta for vi Vs in G Example:
sc, s1s2
if s1.on.tx=2 & s1.oc.MCT=5 & s2.on.tx=4
then s1.oc.ta=[2,7], sc.t.te=6
12June 10, 2007, IDAR’07, Beijing, China
CTC Verification
Precondition: global view of a composite service: control flow, transactional and temporal property
Method: simple calculation Problem: NOT easy to get a global view
Dynamic selection Multi-level composition
13June 10, 2007, IDAR’07, Beijing, China
Methodology
Assumptions A1: only elementary component services A2: static service selection A3: only compensatable component services A4: only AND-split and AND-join operators
14June 10, 2007, IDAR’07, Beijing, China
Outline
Problem Statement and Background Problem Modeling and Methodology Framework Conclusion and Future Work
15June 10, 2007, IDAR’07, Beijing, China
Framework Overview
selection
CEP
YESNO
re-selection
YES
NO
redesign
available service?
G
CTC verification
design
Engine
TEA
Consistency Monitor
Process pool
Selector
G
G
G
16June 10, 2007, IDAR’07, Beijing, China
CTC Verification ExamplesTable1 A B C D
tx 2 8 4 6
MCT 15 20 8 12A
B
C
D
T2 A B C D
ts 0 2 2 10
te 2 10 6 16
ta [2,17] [10,30] [6,14] [16,28]
T3 A B C D
ts 0 2 4
te 2 8
ta [2,17]
T4 A B C D
ts 0 2 6
te 2 10
ta [10,30]
T5 A B C D
ts 0 2 5
te 2
ta [2,17]
[10,30]
10
[11,31]
11
10 10
[16,28]
10
16
10
[8,16] [11,31]
17
11
[8,16]
[10,18]
12
[12,20]
12
16
[16,28]
18
[18,30][2,17][2,17]
16
[16,28]
9
[9,17][10,30]
1011
[11,31] [11,19]
11
11
17
[17,29]
17June 10, 2007, IDAR’07, Beijing, China
Scheduling Algorithms
Motivation: different scheduling algorithms lead to different results of CTC verification, which decide whether to abort the service or not
Objective: design a scheduling algorithm which can decrease the possibility of service abortion
Some algorithms Immediate scheduling Minimal delay scheduling Maximal delay scheduling Average delay scheduling …, optimal scheduling algorithm?
18June 10, 2007, IDAR’07, Beijing, China
Dynamic Monitoring
TEA CEP execution engine
1. instance of process graph
2. verify CTC3. YESstart time
4. service completes
4. service completes
5. verify CTC6. YES
new start time
7. add record
8. exception
CM
6. NOabort
9. compensation
9. compensation
selection
CEP
YESNO
re-selection
YES
NO
redesign
available service?
G
CTC verification
design
Engine
TEA
Consistency Monitor
Process pool
Selector
G
G
G
19June 10, 2007, IDAR’07, Beijing, China
Inaccurate Global View
Problems Uncertainty of Execution Time (UET) Information Missing (IM)
IM1: execution time of normal operation is unknown IM2: available time of compensation operation is
unknown Solution
UET Scheduling algorithms Dynamic monitoring mechanism
IM1: UET variation (increased execution time) IM2: Dynamic monitoring mechanism
20June 10, 2007, IDAR’07, Beijing, China
Removing Assumptions
A4 (only AND-split and AND-join operators) Loop: UET variation XOR/OR: pseudo AND operator
A3 (only compensatable component services) Retriable: safely ignored Pivot: process graph division
A2 (static service selection) IM1 & IM2
A1 (only elementary component services) IM1 & IM2
21June 10, 2007, IDAR’07, Beijing, China
Time Complexity
CTC verification: O(n+e) Dynamic monitoring: O(n2+ne) Total time complexity: O(n2+ne)
22June 10, 2007, IDAR’07, Beijing, China
Outline
Problem Statement and Background Problem Modeling and Methodology Framework Conclusion and Future Work
23June 10, 2007, IDAR’07, Beijing, China
Conclusion and Future Work
A framework Assists selection of services based on
transactional and temporal property Ensures consistent termination under constrained
compensation Some next steps
Minimal-Abort-Possibility scheduling algorithms Cost constraints Integration with web services execution engine
24June 10, 2007, IDAR’07, Beijing, China