MemC3: compact and concurrent MemCache with dumber caching and smarter hashing

  • Authors:
  • Bin Fan;David G. Andersen;Michael Kaminsky

  • Affiliations:
  • Carnegie Mellon University;Carnegie Mellon University;Intel Labs

  • Venue:
  • nsdi'13 Proceedings of the 10th USENIX conference on Networked Systems Design and Implementation
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a set of architecturally and workload-inspired algorithmic and engineering improvements to the popular Memcached system that substantially improve both its memory efficiency and throughput. These techniques--optimistic cuckoo hashing, a compact LRU-approximating eviction algorithm based upon CLOCK, and comprehensive implementation of optimistic locking--enable the resulting system to use 30% less memory for small key-value pairs, and serve up to 3x as many queries per second over the network. We have implemented these modifications in a system we call MemC3--Memcached with CLOCK and Concurrent Cuckoo hashing--but believe that they also apply more generally to many of today's read-intensive, highly concurrent networked storage and caching systems.