Database clustering

    Redis is (mostly) a single-threaded process. This is a design decision that allows it to be extremely performant while keeping its implementation simple. However, the downside of that architectural choice is that Redis cannot be easily scaled. A single Redis process is ultimately bound by the CPU core on which it is running, as well as the amount of memory the server has. To overcome these limitations, Redis Enterprise Software (RS) supports database clustering.

    Database replication

    Database replication provides a mechanism to ensure high availability. When replication is enabled, your dataset is replicated to a slave node, which is constantly synchronized with the master node. If the master node fails, an automatic failover occurs and the slave node is promoted to be the new master node. When the old master node recovers, it becomes the slave node of the new master node. This auto-failover mechanism guarantees that data is served with minimal to no interruption.

    Rack-zone awareness in Redis Enterprise Software

    The rack-zone awareness feature enables more sophisticated placement of database shards and endpoints in high-availability scenarios, as compared to non-rack-zone aware configuration. When you enable rack-zone awareness in the cluster, you need to assign each node to a rack-zone ID. This ID is used for mapping the node to a physical rack or a logical zone (which itself is mapped to a physical rack). The cluster can then make sure that master shards and corresponding slave shards, and similarly endpoints, are placed on nodes in different racks.