Abstract
Large-scale key-value stores are widely used in many Web-based systems to store huge amount of data as (key, value) pairs. In order to reduce the latency of accessing such (key, value) pairs, an in-memory cache system is usually deployed between the front-end Web system and the back-end database system. In practice, a cache system may consist of a number of server nodes, and fault tolerance is a critical feature to maintain the latency Service-Level Agreements (SLAs). In this paper, we present the design, implementation, analysis, and evaluation of R-Memcached, a reliable in-memory key-value cache system that is built on top of the popular Memcached software. R-Memcached exploits coding techniques to achieve reliability, and can tolerate up to two node failures. Our experimental results show that R-Memcached can maintain very good latency and throughput performance even during the period of node failures.
| Original language | English |
|---|---|
| Article number | 7349928 |
| Pages (from-to) | 560-573 |
| Number of pages | 14 |
| Journal | Tsinghua Science and Technology |
| Volume | 20 |
| Issue number | 6 |
| DOIs | |
| Publication status | Published - Dec 2015 |
| Externally published | Yes |
Keywords
- Fault tolerance
- In-memory cache
- Key-value store