Regional Level of Memcache
Explore how to scale Memcache at the regional level by managing data replication and maintaining consistency between cache and storage clusters. Understand challenges like cache invalidations, network congestion, and strategies for bringing new clusters online to ensure high cache hit rates without overloading storage.
Introduction to the regional level
We call a data center a region, and a region is a collection of multiple clusters. At the cluster level, the dominant concern is sharding the key space (using consistent hashing) and grouping the keys into appropriate buckets (for example, viral keys vs. dormant keys and high-churn keys vs. low-churn keys). At the regional level, our main concern will be the replication of keys to meet the overall load.
Consistency concerns come with replication. At the regional level, we must maintain consistency between Memcached and storage clusters (we will provide read-your-writes consistency at the regional level). How can we invalidate stale cached data that has been updated in the storage cluster? These cross-cluster problems are going to be discussed in this lesson.
Overview of design problems at the regional level
To manage the high workload, we add multiple front-end clusters that use the same storage cluster, but to do this, we need to manage replication ...