Professional Documents
Culture Documents
improved in many real world scenarios by the fact that replicas migrate to orphaned
masters (masters no longer having replicas). So at every successful failure event, the
cluster may reconfigure the slaves layout in order to better resist the next failure.
Performance
In Redis Cluster nodes don't proxy commands to the right node in charge for a given
key, but instead they redirect clients to the right nodes serving a given portion of the key
space.
Eventually clients obtain an up-to-date representation of the cluster and which node
serves which subset of keys, so during normal operations clients directly contact the
right nodes in order to send a given command.
Because of the use of asynchronous replication, nodes do not wait for other nodes'
acknowledgment of writes (if not explicitly requested using the WAIT command).
Also, because multi-key commands are only limited to near keys, data is never moved
between nodes except when resharding.
Normal operations are handled exactly as in the case of a single Redis instance. This
means that in a Redis Cluster with N master nodes you can expect the same
performance as a single Redis instance multiplied by N as the design scales linearly. At
the same time the query is usually performed in a single round trip, since clients usually
retain persistent connections with the nodes, so latency figures are also the same as
the single standalone Redis node case.
Very high performance and scalability while preserving weak but reasonable forms of
data safety and availability is the main goal of Redis Cluster.