Is it worth the trouble to put PostgreSQL database on a RAM disk in Linux? Most of my readers will not even consider the question - of course not. But I like to test ideas :)
I have recently got a new PC for development work and I specifically asked to get rid of SSD in there in favour of bigger RAM. My coworkers were puzzled: How come you don't want SSD? It is so much faster! Ever since I put my local DB on the SSH my builds are way faster!
So here is the test. I am not using any benchmark for it, since I do not need high throughput DB on my dev PC. Instead, I am timing "integration tests" part of our build, which is the heavy user of the DB and takes most of the time.
The results:
PostgresSQL with all the data on RAM disk: 0:55s
PostgreSQL with all the data in HDD: 0:55s
There is no difference at all. Well, there is no reason to. My dev database is about 0.5Gb and I have almost 16Gb of free RAM. Linux keeps those DB files in memory and there is no chance it will evict them. No mater if underlying media is HDD, SDD or even broken RAID.
Did I tell you I love Linux already?