Download presentation
Presentation is loading. Please wait.
1
Selective Anti-Entropy Weibin Zhao Henning Schulzrinne {zwb,hgs}@cs.columbia.edu Internet Real-Time Laboratory Columbia University
2
2 Introduction Anti-Entropy Asynchronous replication, eventual consistency Peer-wise session Exchange differences, summary vector Complete anti-entropy (CAE) Reconcile all inconsistent states Selective anti-entropy (SAE) Selectively reconcile inconsistent states
3
3 Approach Subsets of updates R x : all updates initially received by R x Θ(R x, {R x1, R x2, …, R xk }, R z ): SAE request Only specified subsets are solicited SAE types Select-one-direct: Θ(R x, {R z }, R z ) Select-one-indirect: Θ(R x, {R y }, R z ) Select-multiple: Θ(R x, {R y, R z }, R z ) Select-all: = CAE
4
4 Example: SAE vs. CAE R 2 = {a,b}, R 3 = {c,d} R 2 {a,b,c} R1R1 R 3 {a,c,d} R 1 {a,b,c} {a,b,c} {d} R 1 {a,b,c,d} R1R1 R 2 {a,b,c}R 3 {a,c,d} {a,b}{c,d} R 1 {a,b,c,d} CAE SAE Θ(R 1,{R 2 },R 2 )Θ(R 1,{R 3 },R 3 )
5
5 Parallel SAE Sessions All select-one-direct sessions In general, R x can run k SAE sessions s 1, s 2, …, s k in parallel if update subsets u 1, u 2, …, u k do not overlap, i.e., u 1 u 2 … u k = Example if u 1 = {R 2, R 4 }, u 2 = {R 3, R 5 }, then R 1 can run s 1 and s 2 in parallel
6
6 Multi-Scope Partial Replication State set divided into subsets: scopes Applications: directory services SLP directories & scopes UDDI registries & classifications R 1 (S 1,S 2,S 3 ) R 2 (S 1 )R 3 (S 1,S 2 )R 4 (S 2,S 3 ) R 6 (S 1,S 2 ) R 5 (S 3 ) R 7 (S 3 )
7
7 Summary Problem StateScopeID aS1S1 (R 6, t 1 ) bS2S2 (R 6, t 2 ) cS1S1 (R 6, t 3 ) Solution space Summary vector: replica, full replication Summary matrix: replica & scope, partial replication SAE + summary vector: replica, partial replication R 6 (S 1,S 2 ) R 2 (S 1 )R 3 (S 1,S 2 ) (1) (2) (3) a,c b? R 6 states (t 1 <t 2 <t 3 )
8
8 Safe SAE Sessions select-one-direct: Θ(R x, {R z }, R z ) Safe for all select-one-indirect: Θ(R x, {R y }, R z ) Safe if S(R x ) S(R y ) S(R z ) Safe: Θ(R 3, {R 1 }, R 6 ) S(R 3 ) S(R 1 ) = {S 1, S 2 } = S(R 6 ) Unsafe: Θ(R 3, {R 6 }, R 2 ) S(R 3 ) S(R 6 ) = {S 1, S 2 } S(R 2 ) = {S 1 } select-multiple or select-all Safe if all select-one-indirect sessions are safe R 1 (S 1,S 2,S 3 ) R 2 (S 1 )R 3 (S 1,S 2 ) R 6 (S 1,S 2 )
9
9 Conclusions Advantages of SAE Generalize CAE: select-all = CAE Fine control of received subsets of updates Perform multiple SAE sessions in parallel Support multi-scope partial replication efficiently Prerequisite of SAE membership information of the replica set Generic Anti-entropy Request Anti-entropy type: selective or complete Each entry: lower & upper bound timestamps
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.