Project Details
Description
Facebook and YouTube have massive databases containing many objects.
Objects (e.g., pictures, videos) are read from these databases and presented
to users. These databases use slower and cheaper I/O devices. Repeated
database queries are also slow, so companies cache popular objects in
volatile memory (RAM). As RAM is about 1000x faster than I/O, queries to
popular objects are serviced faster. A single computer cannot efficiently
use too much RAM, so a distributed memory caching system called "Memcached"
is utilized. Memcached creates a cluster of nodes, forming a key-value
database in faster memory.
Memcached's simple architecture led to its popularity, but is also its
Achilles' heel. When loads increase, more caching nodes are needed, but it
is difficult to add new nodes and redistribute the cached data to more
nodes. Similarly, when loads reduce, it is harder to shut down some nodes
and migrate their cached data to fewer nodes; scaling down the cluster helps
reduce the large energy costs they consume. Any changes to the number of
Memcached nodes result in throwing out most cached data, leading to lengthy
periods where the distributed caches have to be slowly re-warmed up from the
backend database.
This EArly-concept Grants for Exploratory Research (EAGER) project investigates techniques to scale Memcached clusters
smoothly, without any transient performance degradations. The project also
introduces an intermediate Flash-based storage tier between the memory nodes
and the backend database, to help reduce high latencies to the backend
database and help the smooth scaling of the Memcached cluster.
| Status | Finished |
|---|---|
| Effective start/end date | 06/1/16 → 05/31/19 |
Funding
- National Science Foundation: $257,166.00
Fingerprint
Explore the research topics touched on by this project. These labels are generated based on the underlying awards/grants. Together they form a unique fingerprint.