DistCache: Provable Load Balancing for Large-Scale Storage Systems with Distributed Caching

01/24/2019
by   Zaoxing Liu, et al.
0

Load balancing is critical for distributed storage to meet strict service-level objectives (SLOs). It has been shown that a fast cache can guarantee load balancing for a clustered storage system. However, when the system scales out to multiple clusters, the fast cache itself would become the bottleneck. Traditional mechanisms like cache partition and cache replication either result in load imbalance between cache nodes or have high overhead for cache coherence. We present DistCache, a new distributed caching mechanism that provides provable load balancing for large-scale storage systems. DistCache co-designs cache allocation with cache topology and query routing. The key idea is to partition the hot objects with independent hash functions between cache nodes in different layers, and to adaptively route queries with the power-of-two-choices. We prove that DistCache enables the cache throughput to increase linearly with the number of cache nodes, by unifying techniques from expander graphs, network flows, and queuing theory. DistCache is a general solution that can be applied to many storage systems. We demonstrate the benefits of DistCache by providing the design, implementation, and evaluation of the use case for emerging switch-based caching.

READ FULL TEXT

page 8

page 9

research
10/13/2019

Load Balancing Performance in Distributed Storage with Regular Balanced Redundancy

Contention at the storage nodes is the main cause of long and variable d...
research
08/16/2020

Dependability Evaluation of Middleware Technology for Large-scale Distributed Caching

Distributed caching systems (e.g., Memcached) are widely used by service...
research
03/09/2020

Lightweight Inter-transaction Caching with Precise Clocks and Dynamic Self-invalidation

Distributed, transactional storage systems scale by sharding data across...
research
03/09/2022

Limited Associativity Caching in the Data Plane

In-network caching promises to improve the performance of networked and ...
research
08/02/2021

Information Batteries: Storing Opportunity Power with Speculative Execution

Coping with the intermittency of renewables is a fundamental challenge, ...
research
01/28/2020

InfiniCache: Exploiting Ephemeral Serverless Functions to Build a Cost-Effective Memory Cache

Internet-scale web applications are becoming increasingly storage-intens...
research
11/03/2022

SQUID: Faster Analytics via Sampled Quantiles Data-structure

Measurement is a fundamental enabler of network applications such as loa...

Please sign up or login with your details

Forgot password? Click here to reset