University of Toronto & University of Oslo, 2013.
We propose, ElastO, a distributed system for constructing and maintaining scalable churn-resistant overlay networks for topic-based publish/subscribe (pub/sub) systems. ElastO is designed to dynamically tread the balance among several key dimensions: (a) topic-connected overlay (TCO), i.e., the sub-overlay induced by nodes interested in any topic is connected, (b) low maximum and average node fan-outs, (c) high efficiency to maintain the overlay in presence of churn, (d) balanced computation and communication overhead across all the nodes.
Existing approaches for maintaining pub/sub TCOs are either static and runtime-costly algorithms, or decentralized protocols that produce significantly higher node degrees. One main challenge is to effectively overcome departure of nodes central to the TCO. ElastO carefully maintains local view at each node and efficiently computes sets of shadow nodes upon churn events, so that all links adjacent to a failed node can be quickly replaced by adding links among the shadow nodes.
We evaluate ElastO using both synthetical pub/sub workloads and practical workloads extracted from Facebook and Twitter, and using real-world cluster churn traces released by Google. We show analytically and experimentally that ElastO achieves low fan-out close to static algorithms and high efficiency comparable to decentralized protocols.