[ 
https://issues.apache.org/jira/browse/CASSANDRA-12347?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15401180#comment-15401180
 ] 

Jason Brown commented on CASSANDRA-12347:
-----------------------------------------

[~brandon.williams] The underlying premise behind this body of work is to make 
a Cassandra cluster scale to the next level. There is a need for very large 
clusters (> 1000 nodes, at a minimum), and one of the things standing in our 
way is the limitations of the existing gossip subsystem. 

wrt CASSANDRA-9206, that does not solve the scalability problem, and I stand by 
my [comments on that 
ticket|https://issues.apache.org/jira/browse/CASSANDRA-9206?focusedCommentId=14500565&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14500565].
 

While I agree that changing the design of working components is not something 
to be taken lightly, we do it when it's necessary to move the project forward: 
CASSANDRA-8099, CASSANDRA-5286, CASSANDRA-5351.


> 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|http://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)

Reply via email to