Reputation: 83
I am trying to build cassandra backup and recovery process.
Let say I have 2 nodes A and B and table C with replica factor 2. In table C we have row with ID=5 and Name="Alex". Now , something bad happened to node B and we need to get it down for the few minutes to make a restore. In the same time,while node B is down, someone change row with ID=5 form Name="Alex" to Name="Alehandro".
Node B up again , with restored data and respectively for this node row with ID=5 still contain Name="Alex".
What will happens when I try to find row with ID=5? Will node A synchronize with node B?
Thanks.
Upvotes: 0
Views: 216
Reputation: 87069
Cassandra has several ways to synchronize data to nodes that were missed writes because they were down, or there was garbage collection pause, etc. This includes:
nodetool repair
manually, or the tools like Reaper could be used to automate itAnswering your last question - when 2nd node is back, you can get old data if hints aren't replayed yet, and you're reading directly from that node, and you're reading with consistency level ONE or LOCAL_ONE.
P.S. I recommend to look through the DSE Architecture Guide - it covers how Cassandra works.
Upvotes: 1