Discuss New Concept,New Technic,New Tools, Including EAI,BPM,SOA,Tibco,IBM MQ,Tuxedo, Cloud,Hadoop,NoSQL,J2EE,Ruby,Scala,Python, Performance,Scalability,Distributed,HA, Social Network,Machine Learning.

BigMemory

May 172013
 

original:http://highscalability.com/blog/2012/10/11/ramcube-exploiting-network-proximity-for-ram-based-key-value.html

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 atHotCloud.

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