Understanding Google Cloud Memorystore for Redis Cluster: A Fully Managed Redis Service

Utkarsh Sharma
Google Cloud - Community
2 min readDec 28, 2023

Google Cloud’s Memorystore for Redis Cluster offers a fully managed Redis service, empowering applications to achieve exceptional performance without the complexities of managing intricate Redis deployments. This blog provides an overview of key concepts, hierarchical resource structures, and essential terms integral to comprehending the functionalities and benefits of Memorystore for Redis Cluster.

Memorystore Redis Cluster Design Achitecture

Google Cloud’s Memorystore for Redis Cluster is a fully managed Redis service designed to enable applications running on the Google Cloud platform to achieve remarkable performance while alleviating the burdens associated with managing complex Redis deployments.

Key Concepts and Terms

Hierarchical Resource Structure

Memorystore for Redis Cluster organizes resources into a hierarchical structure, simplifying administration and management. The structure comprises:

  • Instances: Each instance represents a Redis Cluster unit of deployment, encompassing a set of shards.
  • Shards: These are equally sized segments within a cluster, containing a subset of the key space.
  • Primary and Replica Nodes: Each shard consists of one primary node, optionally accompanied by up to two replica nodes for enhanced availability and increased read throughput.

Redis Version

Memorystore for Redis Cluster is built on open-source Redis version 7.x, supporting a subset of the complete Redis command library.

Discovery Endpoint

The discovery endpoint, a combination of an IP address and port number, serves as a consistent connection point to a cluster instance. It remains unchanged throughout the instance’s lifecycle and is robustly backed by multiple Redis nodes across fault-domains (zones) to maintain cluster topology even during node failures or updates.

Instances, Shards, and Nodes

Instances

A Memorystore for Redis Cluster instance is a container for data, interchangeable with the term “cluster” when referring to a single deployment unit. Provisioning an instance involves allocating sufficient shards to cover the application’s entire keyspace.

Shards

Clusters comprise multiple equally sized shards, each managing a portion of the key space.

Primary and Replica Nodes

Each shard features one primary node, while replica nodes — up to two per shard — enhance availability and read throughput. Replicas are evenly distributed across zones for improved redundancy.

High Availability and Performance

Memorystore for Redis Cluster ensures high availability and scalability while distributing data across zones. It offers enhanced throughput via replica nodes and maintains consistent performance through its discovery endpoint.

Conclusion

In summary, Memorystore for Redis Cluster on Google Cloud provides a scalable, highly available, and fully managed Redis service. Its hierarchical structure, comprised of instances, shards, and nodes, coupled with a robust discovery endpoint, ensures optimal performance and ease of management for applications leveraging Redis databases.

For more detailed information and best practices regarding connection configurations and client discovery behavior, refer to the official documentation.

Explore the power and simplicity of Google Cloud’s Memorystore for Redis Cluster to optimize your application’s performance without the complexities of managing Redis infrastructure.

--

--

Utkarsh Sharma
Google Cloud - Community

Senior Solutions Consultant @ Google | Talks about AWS | GCP | Azure | K8s | IaC | Terraform | CI/CD | Docker| Helm | Migration