Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for 
change notification.

The "AntiEntropy" page has been changed by StuHood.
http://wiki.apache.org/cassandra/AntiEntropy?action=diff&rev1=3&rev2=4

--------------------------------------------------

+ == Implementation ==
+ 
  Cassandra's implementation is modeled on Dynamo's, with 
[[ArchitectureAntiEntropy|modifications to support the richer data model]].  
Quoting from 
[[http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html|Amazon's 
Dynamo]] section 4.7,
  
   . To detect the inconsistencies between replicas faster and to minimize the 
amount of transferred data, Dynamo uses Merkle trees [13]. A Merkle tree is a 
hash tree where leaves are hashes of the values of  individual keys. Parent 
nodes higher in the tree are hashes of their respective  children. The 
principal advantage of Merkle tree is that each branch of the tree  can be 
checked independently without requiring nodes to download the entire [...] data 
set.
  
  The key difference in Cassandra's implementation of anti-entropy is that the 
Merkle trees are built per column family, and they are not maintained for 
longer than it takes to send them to neighboring nodes. Instead, the trees are 
generated as snapshots of the dataset during major compactions: this means that 
excess data might be sent across the network, but it saves local disk IO, and 
is preferable for very large datasets.
  
+ == Operation ==
+ Anti entropy repairs can be triggered manually for a single node via 
'nodetool repair', although they will occasionally trigger automatically.
+ 

Reply via email to