Join us at ScyllaDB Labs, instructor-led hands-on training sessions | May 29
Register now

Replication Factor

3 min to complete

Replication Factor

ScyllaDB replicates data according to the replication strategy that you choose. This strategy will determine the placement of the replicated data. ScyllaDB runs nodes in a hash ring. All nodes are equal: there are no master, slave, or replica sets.

The Replication Factor (RF) is equivalent to the number of nodes where data (rows and partitions) are replicated. Data is replicated to multiple (RF=N) nodes.

An RF of one means there is only one copy of a row in a cluster, and there is no way to recover the data if the node is compromised or goes down. RF=2 means that there are two copies of a row in a cluster. An RF of at least three is used in most systems.

Data is always replicated automatically. Read or write operations can occur to data stored on any of the replicated nodes.

Replication Factor three (RF=3) Write Operation, cluster level

In the example above, our client sends a request to node V to write partition one; one’s data is replicated to nodes W, X, and Z. We have a Replication Factor (RF) of three. In this drawing, V is a coordinator node but not a replicator node. However, replicator nodes can also be coordinator nodes and often are.

Replication Factor 3 (RF=3) Read Operation, cluster level

During a read operation, the client sends a request to the coordinator. Effectively because of the RF=3, three nodes respond to the read request.