advertise
« Stuff The Internet Says On Scalability For October 12, 2012 | Main | Antirez: You Need to Think in Terms of Organizing Your Data for Fetching »
Thursday
Oct112012

RAMCube: Exploiting Network Proximity for RAM-Based Key-Value Store

RAMCube is a datacenter oriented design for RAM-based key-value store that supports thousands or tens of thousands of servers to offer up to hundreds of terabytes of RAM storage. Here's the PDF Paper describing the system and here's a video of the presentation given at HotCloud.

The big idea is: RAMCube exploits the proximity of a BCube network to construct a symmetric MultiRing structure, restricting all failure detection and recovery traffic within a one-hop neighborhood, which addresses problems including false failure detection and recovery traffic congestion. In addition, RAMCube leverages BCube’s multiple paths between any pairs of servers to handle switch failures.

A few notes:

  • 75% of Facebook data is stored in memcache.
  • RAM is 1000 time faster than disk
  • RAM is used in caches, but this increases application complexity as applications are responsible for cache consistency.
  • Under a high work load a 1% cache miss rate can lead to a 10x performance penalty.
  • So store data directly in RAM instead of using a cache. 
  • Storing all data in RAM requires replication to multiple nodes for safety, which brings in datacenter networking issues.
  • The unhappy reality of datacenter networks must be considered to maximize the benefits of RAM.
    • False failure detection. It's difficult to quickly tell temporary network problems from real node failures.
    • Given the high levels of traffic fast failure recovery is difficult.
  • Utilizes the global topology information of BCube and leverage network proximity to restrict all failure detection and recovery traffic within an one-hop neighborhood. 

Related Articles

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>