Upload
lucas-oconnell
View
218
Download
3
Tags:
Embed Size (px)
Citation preview
Lock-Free Consistency Control for Web 2.0 ApplicationsJiang-Ming Yang, Hai-Xun Wang, Ning Gu, Yi-Ming Liu,
Chun-Song Wang, Qi-Wei Zhang
25 April 2008
Outline
• Motivation & Challenges• Problem Setting• Our Solutions• Experiments• Conclusions
Outline
• Motivation & Challenges• Problem Setting• Our Solutions• Experiments• Conclusions
Motivation
• Single Site
Motivation
• Multiple Mirror Site
Challenges
?
?
• How to merge the conflicts in Multiple Mirror Site for Web 2.0 Application?
Outline
• Motivation & Challenges• Problem Setting• Our Solutions• Experiments• Conclusions
Problem Setting
• Data shared in mirrored sites can be in varied forms. Here, we assume the shared data on mirrored sites are XML documents.
• Consequently, operations on the data are expressed by XML queries and updates.
Problem Setting<Root>
<book @title="Introduction to Algorithm"> <category>CS</category> <tag>Hot</tag>
</book> <book @title="Advanced Statistical Learning">
<category>UnKnow</category> </book> <book @title="Linear Algebra">
<category>Math</category> </book>
</Root>
Problem Setting
• CAUSAL RELATIONSHIPS
• TRANSACTIONS
• CONCURRENT OPERATIONS (Lock Free)
Problem Setting
• CAUSAL RELATIONSHIPSU1
Change the title “Advanced Statistical Learning” to “Statistical Learning”.
U2
Set the category of the “Statistical Learning” book to “Math”.
Problem Setting
• TRANSACTIONS
– Using transaction model to execute some critical operations
– Should be executed serialized with others
Problem Setting
• CONCURRENT OPERATIONSU3
Add a “Discount” tag to books in “Math” category.
U4
Set the category of the “Linear Algebra” book to “CS”.
Outline
• Motivation & Challenges• Problem Setting• Our Solutions– Causality Preservation– Transaction– Consistency Control
• Experiments• Conclusions
Causality Preservation• Definition. (Causal Ordering Relation “→”). Given two operations Oa and Ob from
local replica sites i and j respectively, we have Oa → Ob, if and only if (1) i = j, and Oa is generated before Ob is generated; (2) i ≠ j, and Oa is executed on site j before Ob is generated; (3) there exists an operation Ox, such that Oa → Ox and Ox → Ob.
• Definition.(Concurrent Relation “ ”). Given two operations Oa and Ob, we say Oa and Ob are concurrent or Oa Ob iff neither Oa → Ob, nor Ob → Oa.
Causality Preservation
• Vector based Timestamp– SV = <SV1, SV2, . . . , SVn>
– Both for Site & operation
• Definition. (Execution Condition). Operation O (from site i) is causally ready for execution at site j (i ≠ j) if the following conditions are satisfied: (in reference [6, 14])– SVO [i] = SVj[i] + 1
– SVO [k] ≤ SVj [k], for all 1 ≤ k ≤ N and k ≠ i.
Transaction
• The transaction model is introduced to achieve concurrent transparency
• Definition. (Serialized Transaction). Let T be a transaction, and O be an operation (O may or may not be a transaction). Transaction T is a serialized transaction only if either O is executed before T in all sites, or O is executed after T in all sites.
Transaction
• O1 → NOOP1 → O3 and O2 → NOOP2 → O4
Transaction• Definition. (TOrder: total order for transactions). It’s a logical order
among transactions : T1 T≺ 2 T≺ 3 … T≺ ≺ n.
Consistency Control – Basic Idea
Consistency Control - Operation
• XPath : /root/book
• XQuery & XUpdateFOR $title in /root//title
$category = $book/categoryWHERE $title = "Advanced Statistical Learning"..
Consistency Control – Storage Model
Consistency Control – Storage Model
Consistency Control – Storage Model
Consistency Control - Query Process
• It is clear that there is no overlap in their timestamps, and at any time only one of them is valid.
• In general, only nodes whose timestamp (tcreate, tdelete) satisfies t (t∈ create, tdelete) are valid at t.
Consistency Control - Query Process
Consistency Control – Size of OHL
• In our approach, we store operations in an Operation History List (OHL).
• Each time a replica receives a new remote operation, it will update OHL.
• When an operation is executed on all replicas, it will be removed from OHL and its related state information will be removed from the inverted list.
Outline
• Motivation & Challenges• Problem Setting• Our Solutions• Experiments• Conclusions
Experiments
Experiments
Experiments
Outline
• Motivation & Challenges• Problem Setting• Our Solutions• Experiments• Conclusions
Conclusions• We proposed a lock-free approach for
consistency maintance in Web 2.0 environment.– We do not use the locking mechanism, so concurrent
operations are executed as soon as possible upon their arrival with ensuring the convergence.
– We also support the transaction semantics for critical operations without using the locking mechanism relying on the causality preservation approach.
• Better load balance, high-speed access and shorter respond time
Thank You !