You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jason Brown (JIRA)" <ji...@apache.org> on 2016/07/29 22:05:20 UTC

[jira] [Created] (CASSANDRA-12347) Gossip 2.0 - broadcast tree for data dissemination

Jason Brown created CASSANDRA-12347:
---------------------------------------

             Summary: Gossip 2.0 - broadcast tree for data dissemination
                 Key: CASSANDRA-12347
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12347
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Jason Brown


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|www.gsd.inesc-id.pt/%7Ejleitao/pdf/srds10-mario.pdf], 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.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)