Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Won't Fix
-
None
-
None
Description
Description: A broadcast tree (spanning tree) allows an originating node to efficiently send out updates to all of the peers in the cluster by constructing a balanced, self-healing tree based upon the view it gets from the peer sampling service (CASSANDRA-12346).
I propose we use an algorithm based on the Thicket paper, which describes a dynamic, self-healing broadcast tree. When a given node needs to send out a message, it dynamically builds a tree for each node in the cluster; thus giving us a unique tree for every node in the cluster (a tree rooted at every cluster node). The trees, of course, would be reusable until the cluster configurations changes or failures are detected (by the mechanism described in the paper). Additionally, Thicket includes a mechanism for load-balancing the trees such that nodes spread out the work amongst themselves.
Attachments
Issue Links
- is required by
-
CASSANDRA-12345 Gossip 2.0
- Resolved
- requires
-
CASSANDRA-12346 Gossip 2.0 - introduce a Peer Sampling Service for partial cluster views
- Resolved