Monday, February 27, 2006

What provides the optimal usage?

Today, while browsing around, I came across a post by Jeff, a CNET employee who was wondering about what provides the optimal usage (assuming a server has 16GB of RAM)? To paraphrase his question, would it be better to use a Large RAM disk or have the MySQL live on the hard disks?

So far I haven't used RAM disk for MySQL simply because most of the servers didn't have 16GB of RAM and some of the databases I worked with were quite larger than 16GB.

I assume that using RAM disk would provide a volatile infrastructure but would certainly improve the performance. Gurus are your thoughts? What can be the possible disadvantages of setting up a RAM disk for large databases?

Your thoughts and comments are needed.



Anonymous said...

Using a RAM disk makes little sense.
If you wish to keep tables entirely in memory, you can use MEMORY tables which are optimised for that purpose.
Pretending RAM = disk is inefficient.

Lots of RAM is good, use it for the various buffers and caches in the server. Which ones exactly depends on which storage engines you use and what kind of use it needs.
For instance, if you use InnoDB, having a very big innodb_buffer_pool makes sense.

Frank said...

I was wondering that RAM disk will not make much sense. Thank you for your informative comment Arjen.


Anonymous said...

Also, when thinking about this, backup is a consideration -- I was thinking that running two copies of mysql, one in master, one in replication (to the local backup HD) would work well.