Was this page helpful?
ScyllaDB replicates data according to eventual consistency. This means that, in ScyllaDB, when considering the CAP Theorem, availability and partition tolerance are considered a higher priority over consistency. Although ScyllaDB’s tunable consistency allows users to make a tradeoff between availability and consistency, ScyllaDB’s consistency level is tunable per query.
However, over time, there can be a number of reasons for data inconsistencies, including:
a down node;
a network partition;
dropped mutations;
process crashes (before a flush);
a replica that cannot write due to being out of resources;
file corruption.
To mitigate entropy, or data inconsistency, ScyllaDB uses a few different processes. The goal of ScyllaDB anti-entropy - based on that of Apache Cassandra - is to compare data on all replicas, synchronize data between all replicas, and, finally, ensure each replica has the most recent data.
Anti-entropy measures include write-time changes such as hinted handoff, read-time changes such as read repair, and finally, periodic maintenance via repair.
ScyllaDB Hinted Handoff - High-Level view of ScyllaDB Hinted Handoff
ScyllaDB Read Repair - High-Level view of ScyllaDB Read Repair
ScyllaDB Repair - Description of ScyllaDB Repair
Also learn more in the Cluster Management, Repair and ScyllaDB Manager lesson on ScyllaDB University.
Copyright
© 2016, The Apache Software Foundation.
Apache®, Apache Cassandra®, Cassandra®, the Apache feather logo and the Apache Cassandra® Eye logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. No endorsement by The Apache Software Foundation is implied by the use of these marks.
Was this page helpful?