Jump to Content
Developers & Practitioners

What is Memorystore?

August 17, 2021
https://storage.googleapis.com/gweb-cloudblog-publish/images/Memorystore_v6-29-21.max-2000x2000.jpg
Priyanka Vergadia

Staff Developer Advocate, Google Cloud

Many of today's applications ranging from gaming, cybersecurity, social media require processing data at sub-millisecond latency to deliver real-time experiences. To meet demands of low latency at increased scale and reduced cost you need an in-memory datastore. Redis and Memchaced are among the most popular. Memorystore is a fully managed in-memory data store service for Redis and Memcached at Google Cloud. Like any other Google Cloud service it is fast, scalable, highly available, and secure. It automates complex tasks of provisioning, replication, failover, and patching so you can spend more time on other activities!! It comes with a 99.9% SLA and integrates seamlessly with your apps within Google Cloud.  

Memorystore is used for different types of in-memory caches and transient stores; and Memorystore for Redis is also used as a highly available key-value store. This serves multiple use cases including web content caches, session stores, distributed locks, stream processing, recommendations, capacity caches, gaming leaderboards, fraud\threat detection, personalization, and ad tech.

https://storage.googleapis.com/gweb-cloudblog-publish/images/Memorystore_v6-29-21.max-2000x2000.jpg
Click to enlarge

What’s your application's availability needs?

Memorystore for Redis offers Basic and Standard Tiers. The Basic Tier is best suited for applications that use Redis as a cache and can withstand a cold restart and full data flush. Standard Tier instances provide high availability using replication and automatic failover.

Memorystore for Memcached instances are provisioned on a node basis with vCPU and memory per cores per node, which means you can select them based on your specific application requirements. 

Features and capabilities

Secure: Memorystore is protected from the internet using VPC networks and private IP and comes with IAM integration to protect your data. Memorystore for Redis also offers instance level AUTH and in-transit encryption. It is also compliant with major certifications (e.g., HIPAA, FedRAMP, and SOC2)

Observability: You can monitor your instance and set up custom alerts with Cloud Monitoring. You can also integrate with OpenCensus to get more insights into client-side metrics.

Scalable: Start with the lowest tier and smallest size and then grow your instance as needed. Memorystore provides automated scaling using APIs, and optimized node placement across zones for redundancy. Memorystore for Memcached can support clusters as large as 5 TB, enabling millions of QPS at very low latency.

Highly available: Memorystore for Redis instances are replicated across two zones and provide a 99.9% availability SLA. Instances are monitored constantly and with automatic failover—applications experience minimal disruption.

Migrate with no code changes: Memorystore is open source software compliant, which makes it easy to switch your applications with no code changes. 

Backups: Memorystore for Redis offers an import/export feature to migrate Redis instances to Google Cloud using RDS snapshots.

Use cases

Memorystore is great for use cases that require fast, real-time processing of data. Simple caching, gaming leaderboards, and real-time analytics are just a few examples.

Caching: Caches are an integral part of modern application architectures. Memorystore is used in caching use cases such as session management, frequently accessed queries, scripts, and pages.

Gaming:  With data structures like Sorted Set, Memorystore makes it easy to maintain a sorted list of scores for a leaderboard while providing uniqueness of elements. Redis hash makes it fast and easy to store and access player profiles.

Stream Processing: Whether processing a Twitter feed or stream of data from IoT devices, Memorystore is a perfect fit for streaming solutions combined with Dataflow and Pub/Sub.

Conclusion

If your application needs to provide low latency to guarantee a great user experience check out Memorystore.  For a more in-depth look into Memorystore check out the documentation.

Video Thumbnail

For more #GCPSketchnote, follow the GitHub repo. For similar cloud content follow me on Twitter @pvergadia and keep an eye out on thecloudgirl.dev.

Posted in