total order in content-based publish/subscribe systems
DESCRIPTION
Total Order in Content-based Publish/Subscribe Systems. ICDCS 2012, June 19 th 2012 Kaiwen Zhang. Joint work with: Vinod Muthusamy, Hans-Arno Jacobsen University of Toronto. http://www.padres.msrg.utoronto.ca. Outline. Background: publish/subscribe Total order semantics - PowerPoint PPT PresentationTRANSCRIPT
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
Total Order in Content-based Publish/Subscribe Systems
Joint work with:
Vinod Muthusamy,
Hans-Arno Jacobsen
University of Toronto http://www.padres.msrg.utoronto.ca
ICDCS 2012, June 19th 2012Kaiwen Zhang
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
2Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Outline
Background: publish/subscribe Total order semantics Related work: sequencers Natural pairwise total order Our two-phase solution Performance evaluation Comparison with
Group communication systems
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
3Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Advertisement-Based Pub/Sub3
brokermatch &
forward
Advertisement pathSubscription path
Publication path
publisher
name = `IBM’
price = $40
subscriber
name = `IBM’ price > $20
subscriber
name = `IBM’ price > $30
name = ‘IBM’
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
4Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Pairwise Total Order (PTO)for Pub/Sub
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
5Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Application Scenarios Little work on total order in pub/sub so far
Subscriber decoupling Minimize overhead
External communication between peers Comparing event streams
Consistency Online games (non-commutative operations) Monitoring (stream ordering)
Fairness Stock quote (detecting event patterns)
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
6Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Drawbacks of Sequencers
Sequencer networks [Lumezanu 2006] Topic-based Global knowledge Sequencing overhead applied
to all pubs and subs
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
7Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Per-Publisher Ordering using FIFO Links Per-Publisher TO
Maintaining order per publisher (i.e. FIFO order) Per-Publisher TO is maintained using
FIFO links between overlay neighbours Requires unique paths to each sub!
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
8Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Natural Pairwise TO (N-PTO) Using FIFO links, a common broker for all
publisher/subscriber pairs provides N-PTO. Consider that broker as a “super-publisher”
Per-publisher TO is then enforced from that broker on
Consider P1 and P2 as internal tothe publisher B0
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
9Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Our Solution
Uses FIFO links N-PTO provided by a common broker
Two phases: Conflict detection
Identify pairs of disjoint publisher/subscriber paths
Resolution Defer delivery only to affected subscribers
Lightweight solution for content-based P/S Uses local ads/subs broker knowledge
(next-hops)
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
10Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
No ConflictP2 doesn't match S4No conflict
S1-S3 share same next-hop as P2No conflicts detected at B1
S1-S3 have differentnext hop from P2:
B3 is a common broker
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
11Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Conflict ResolutionS4 forwardedimmediately
S1 has a different next-hop fromS2-3 and P2:
Their paths are disjoint!
Defer delivery to S1, wait for ackConflict for S3, defer until ack
Detects that P2 and S2 have different next-hops:
Send ack back
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
12Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Properties of the Solution System model:
Acyclic topology FIFO links Advertisement-based
Solution is safe under crash failures Theorem: “Pairwise total order is impossible in
publish/subscribe systems under the presence of failures.”
Optimizations: Progressive delivery Faster detection
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
13Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Evaluation
Implementation using PADRES in Java Modular; requires only few changes to the core
Workload Overlapping subscriptions; stress test High conflict rates: 25-100%
Topology 24 to 96 brokers 800 subscribers, 240 publishers
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
14Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Low Detection OverheadOverall, still small
impact to non-conflictsubs
Overhead increaseswith less conflict
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
15Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Scalability over Baseline
Central sequencer
Our solution
No total order
Throughput saturatedfor central sequencer
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
16Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Performance over Spread (Group Communication Systems)
Our solution
Spread w/o ord.
Outperformed aftera certain size
Spread w/ TO(token algorithm)
Overhead due toTO
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
17Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Conclusions & Future Work Lightweight solution for content-based p/s
Local broker knowledge Contained resolution overhead
Extension for cyclic topologies Adjust routing paths
Pub/sub clustering and client mobility Maximize natural ordering
MIDDLEWARE SYSTEMSRESEARCH GROUP
MSRG.ORG
18Kaiwen Zhang, Vinod Muthusamy, Hans-Arno Jacobsen
Thank you!