Download the Tom's Hardware App from the App Store
The reference for current tech news
Yes No
Ads

RAMCloud: The Idea of Storing All Data in RAM

by - source: Stanford University

Researchers at Stanford University have an idea how to overcome latency and performance bottlenecks of hard drive and solid state disk-based storage systems.

According to a recently published paper, they believe that a RAM-based cloud system with about 1000 servers and a total RAM capacity of 64 TB can be built for about $4 million and is feasible today.

Compared to a disk-based system, a RAMCloud could have a 100-1000x lower latency than disk-based systems and 100-1000x greater throughput, the researchers said. The system would use replication and backup techniques to overcome the problem of volatility and data loss if the power supply is interrupted. The approach would provide enough performance for cloud systems to solve scalability issues for web applications, enable a "a new class of data-intensive applications" due to the extremely low latency of RAM and provide a growth path for small applications to grow into a large application on demand.

The estimate is that latencies of only 5 to 10 microseconds should be achievable by a measured RAMCloud system, which is about 1000x faster than the 5 - 10 milliseconds that is provided by disk-based systems for data that is accessed over a network. The researchers estimate that a single multi-core RAM server could support at least 1,000,000 small requests per second, while disk based systems are typically maxed out at 1000 to 10,000 requests.

Cost is the barrier for a broad use of such RAMClouds. However, the scientists noted that "the cost of DRAM today is roughly the same as the cost of disk 10 years ago ($ 10-30/GB)", which, of course, does not help much considering the massive storage space requirements today.

Share:
56
Comments
X
Submit

Comments
Add your comment
amk-aka-phantom 11/11/2011 9:15 PM
Hide
-20+

No really? This can be done for a consumer, as well. Imagine having your entire OS in the RAM? An X79 board has what, 8 RAM slots? Throw 8GB into each one and you get 64GB, that's more than enough for a full Windows installation and some programs. It will be blazing fast.

ltdementhial 11/11/2011 9:22 PM
Show
blood_dew 11/11/2011 9:26 PM
Show
Netherscourge 11/11/2011 9:29 PM
Hide
-20+

Sounds awesome - until the power goes out.

;(

amk-aka-phantom 11/11/2011 9:33 PM
Hide
-12+

ltdementhial :
i really don't see an use for this type of things...although it will be nice if you are a Minecraft maniac...but in real life task even more than 8gb for now is very unnecessary and stupidly excessive.



Prices keep going down. RAM is dirt cheap; 8GB costs $50 (2x4GB), the new 8GB chips are costly but prices WILL fall, and having your stuff in the RAM is awesome. And for servers, it's even better. Did you read this:

Quote :The researchers estimate that a single multi-core RAM server could support at least 1,000,000 small requests per second, while disk based systems are typically maxed out at 1000 to 10,000 requests.


That is, bye-bye to DDOS.

amk-aka-phantom 11/11/2011 9:35 PM
Hide
-2+

Netherscourge :
Sounds awesome - until the power goes out.;(



UPS for you :D Mine can keep my gaming rig, my lights, fans (no, not the case cooling, big ceiling fans) and so on running for 2 days straight.

blood_dew :
And how are you planning to get around the volatility problem on your home rig sir amk-aka-Phantom?



Elaborate, please!

LegendKiller 11/11/2011 9:39 PM
Hide
-2+

ltdementhial :
i really don't see an use for this type of things...although it will be nice if you are a Minecraft maniac...but in real life task even more than 8gb for now is very unnecessary and stupidly excessive.


more than 8GB is recommended if you do some CS5.5 or 3D uses... 8GB is need for gaming system... Your all about the games instead of what's out there in the internet that you needa experience...

Haserath 11/11/2011 9:45 PM
Hide
-1+

blood_dew :
And how are you planning to get around the volatility problem on your home rig sir amk-aka-Pantom?


There is non-volatile ram in development. Not sure if it will ever become a real product, but it's there.

viometrix 11/11/2011 9:46 PM
Show
surda 11/11/2011 10:02 PM
Show
ojas 11/11/2011 10:03 PM
Hide
-2+

Haserath :
There is non-volatile ram in development. Not sure if it will ever become a real product, but it's there.


I thought SSDs use non-volatile NAND RAM? or is that NAND flash? :\

Why do they call it a "could" system? Isn't this just a ram-based server? Cloud is like, for storing data and things right? "Run your shitz of the cloud". I can't see the point of it for cloud storage, would be too expensive. What's the point of the super-low latency if your ping to the RamCloud will be 200ms? A movie streams a ms late, big deal...

If it's used for regular server hosting (like game servers, etc) then i can see the point, because computation time would reduce.

drinking12many 11/11/2011 10:04 PM
Hide
-1+

LegendKiller :
more than 8GB is recommended if you do some CS5.5 or 3D uses... 8GB is need for gaming system... Your all about the games instead of what's out there in the internet that you needa experience...




Also nice if you have a couple VMs running. My board is maxed out at 16.

ojas 11/11/2011 10:07 PM
Hide
-6+

BTW does anyone else notice a CPU usage spike when you scroll from the article to the comments? Happens somewhere at the end of the article...been noticing this for a while.

Use chrome, 32-bit, 3.2GB RAM and a Core 2 Quad. Tried on a C2D laptop and happens there too, had used chrome again.

EDIT: Just tried with IE, spike happens but you cant notice it. Chrome actually stutters a bit...

mindless728 11/11/2011 10:08 PM
Hide
-2+

ojas wrote :

I thought SSDs use non-volatile NAND RAM? or is that NAND flash? :\

Why do they call it a "could" system? Isn't this just a ram-based server? Cloud is like, for storing data and things right? "Run your shitz of the cloud". I can't see the point of it for cloud storage, would be too expensive. What's the point of the super-low latency if your ping to the RamCloud will be 200ms? A movie streams a ms late, big deal...

If it's used for regular server hosting (like game servers, etc) then i can see the point, because computation time would reduce.




yeah if you are the ONLY one using it then the timing difference is almost nothing compared to the ping, but if you have hundreds of thousands of users accessing the data HDD's and even SSD's wouldn't be able to keep up, that is where the Ram Cloud would come in

amk-aka-phantom 11/11/2011 10:09 PM
Hide
-11+

viometrix wrote :

amk-aka-Phantom - after you use all that 64gb of ram for your os and some programs, what ram do you have left to actually run them? sheesh




About 29GB. My current OS/programs partition takes 35GB. U mad?

ojas 11/11/2011 10:10 PM
Hide
-1+

mindless728 :
yeah if you are the ONLY one using it then the timing difference is almost nothing compared to the ping, but if you have hundreds of thousands of users accessing the data HDD's and even SSD's wouldn't be able to keep up, that is where the Ram Cloud would come in


Ah...didn't think of that!

Anonymous 11/11/2011 10:39 PM
Hide
-7+

It's called a RAM-drive, and this is nothing new. You can do this on any desktop machine if you want, it's just usually not worth it due to power interruptions. Still fun nonetheless.

TunaSoda 11/11/2011 11:09 PM
Hide
-8+

You lost me at cloud

ThisIsMe 11/11/2011 11:12 PM
Hide
-3+

Not sure if the researchers have taken into consideration the added cost from having to use only buffered ECC RAM. The unbuffered non-ECC RAM some of the commenters here are referring to is considered volatile for more than just what happens when the power turns off. After some time the data stored in this RAM becomes corrupted and would no longer be the same data. Ever wonder why some programs after being open and running for several days can sometimes start to act funny after a while?

For the past 20 years or so OS's have used redundancy to help with this issue via the swap file on the HDD. Using buffered ECC RAM can eliminate about 99% of this problem, but can cost 2-3 times as much in some cases. Although, I suppose you could offset the cost by using twice as much "regular" RAM and using half for redundancy. Still, the best option would be to store the data on a typical storage device and have a newer better buffering system which keeps and accurate and updated copy in the RAM "cloud" which could keep the data integrity in check. This way there would only be the older latency issue initially when the data is being uploaded or altered, or when it needs to be rebuffered because of corruption. Plus that thing about the power going out would be a non issue.

Anonymous 11/12/2011 12:21 PM
Hide
-0+

This makes zero sense for a home user. But makes a lot of sense in some situations. Master server that writes results to disk, with many slaves that only have ram for instance.

I can see this ram cloud service now . "Tech support: how can i help you", "you: all my files are missing", "tech: ya we had a power failure, sorry everything is stored in ram, all data is gone", "you: excuse me?"

Anonymous 11/12/2011 12:39 PM
Hide
-0+

If you went for a massive RAM drive like this why wouldn't you couple it with tiers of other storrage? SSD's and a large pool of harddrives? I don't know the optimal combination, having some parts work as cache for others.

caparc 11/12/2011 12:53 PM
Hide
-1+

My second computer was a Leading Edge 286 with a VGA color monitor, about $2 grand. I don't remember the specs except for the gigantic 65MB HD. My impossible dream was having a 640MB HD and a 640MB ram drive and leave the machine turned on all the time and keep the hard drive mirrored on the Ram drive. I still miss the Leading Edge clicker keyboard.

alidan 11/12/2011 1:02 AM
Hide
--1+

there are ways to power ram, to get over the volatile problem, expensive as hell last time i looked into them though.

Hetneo 11/12/2011 1:47 AM
Hide
-5+

ltdementhial :
i really don't see an use for this type of things...although it will be nice if you are a Minecraft maniac...but in real life task even more than 8gb for now is very unnecessary and stupidly excessive.


You don't even understand what this article is about and I don't care to enlighten you, just one clue it's not about consumer level use.

Hetneo 11/12/2011 2:01 AM
Hide
-1+

ojas :
I thought SSDs use non-volatile NAND RAM? or is that NAND flash? :\Why do they call it a "could" system? Isn't this just a ram-based server? Cloud is like, for storing data and things right? "Run your shitz of the cloud". I can't see the point of it for cloud storage, would be too expensive. What's the point of the super-low latency if your ping to the RamCloud will be 200ms? A movie streams a ms late, big deal...If it's used for regular server hosting (like game servers, etc) then i can see the point, because computation time would reduce.


NAND RAM is much slower than DRAM and can wear out after certain number of writes and erase cycles.

Yes someone's ping could be 200 due to internet connection, but usage of RAM for storage could allow that 100-1000X people have 200ms ping where HDD/SSD allows for X people to have.

Hetneo 11/12/2011 2:04 AM
Hide
-0+

ThisIsMe :
Not sure if the researchers have taken into consideration the added cost from having to use only buffered ECC RAM. The unbuffered non-ECC RAM some of the commenters here are referring to is considered volatile for more than just what happens when the power turns off. After some time the data stored in this RAM becomes corrupted and would no longer be the same data. Ever wonder why some programs after being open and running for several days can sometimes start to act funny after a while?For the past 20 years or so OS's have used redundancy to help with this issue via the swap file on the HDD. Using buffered ECC RAM can eliminate about 99% of this problem, but can cost 2-3 times as much in some cases. Although, I suppose you could offset the cost by using twice as much "regular" RAM and using half for redundancy. Still, the best option would be to store the data on a typical storage device and have a newer better buffering system which keeps and accurate and updated copy in the RAM "cloud" which could keep the data integrity in check. This way there would only be the older latency issue initially when the data is being uploaded or altered, or when it needs to be rebuffered because of corruption. Plus that thing about the power going out would be a non issue.


Or you can, as researches did, use regular HDDs for backup and redundancy.

blader15sk8 11/12/2011 2:14 AM
Hide
-0+

ojas :
BTW does anyone else notice a CPU usage spike when you scroll from the article to the comments? Happens somewhere at the end of the article...been noticing this for a while.Use chrome, 32-bit, 3.2GB RAM and a Core 2 Quad. Tried on a C2D laptop and happens there too, had used chrome again.EDIT: Just tried with IE, spike happens but you cant notice it. Chrome actually stutters a bit...



Tested it out.. you're right.

kanaida 11/12/2011 2:14 AM
Hide
--1+

Netherscourge :
Sounds awesome - until the power goes out.;(


You are 100% correct. No UPS lasts forever. Even with generators all it takes is a single datacenter to have an outage just a little greater than their backup power. Just ask RIM.

I'ts a horrible Idea if you not constantly replicating to disks, wich will probably not keep up.

ancsik 11/12/2011 2:15 AM
Hide
-2+

Purely in-memory datastores, like memcached and redis, have been around for awhile. MemcacheDB and RedisCluster (still in progress) are projects which manage large clusters running these services. Redis and memcached were both benchmarked handling in excess of 100k reads/writes per second on consumer grade laptops a few years ago. Redis can even snapshot to disk fairly frequently so that it isn't as volatile.

It's great to see more people talking about this as a viable technology, but these researchers are a few years behind the times. The algorithms for making large clusters handle failing nodes are in wide use for disk based storage systems, the software for memory-only storage services are in common use, combinations there of, as mentioned above, are already being built and have been talked about for years.

livebriand 11/12/2011 2:24 AM
Hide
-0+

ojas :
BTW does anyone else notice a CPU usage spike when you scroll from the article to the comments? Happens somewhere at the end of the article...been noticing this for a while.Use chrome, 32-bit, 3.2GB RAM and a Core 2 Quad. Tried on a C2D laptop and happens there too, had used chrome again.EDIT: Just tried with IE, spike happens but you cant notice it. Chrome actually stutters a bit...


Nope. Running the latest version of Chrome, an i5 750, 8GB RAM, Win7 64-bit, and a geforce 550ti. I looked while scrolling down and the CPU usage was only at 3-5%.

Anonymous 11/12/2011 2:25 AM
Hide
-2+

Gawd, this is 'tarded. Smart server applications cache everything they need in memory anyways this is like something a 14 y/o would think of, I'd hate to think of the "research" that went into this idea.


Ads

Best offers

Newsletters


OK
Ads