So to get best possible performance our advise is still the same – you should try to fit your active dataset into memory, and it is possible as nowadays systems with 300GB+ RAM already available.
Conclusion is kind of obvious, but don’t think this is a MySQL/RDBMS advice only: check the Foursquare MongoDB outage post mortem post to see the impact of having to go to disk for each request). On the other hand, even if compelling from a performance point of view, I’m not going to say that it is doable or worth it (yet/ever?) to have all your data in memory.
This blog is called myNoSQL and it is written by me, Alex Popescu, a software architect with a passion for open source and communities.
It records my readings, learnings, and opinions on NoSQL databases, polyglot persistence, and distributed systems -- subjects that I'm passionate about.
The opinions expressed here are my own, and no other party necessarily agrees with them.
If you feel I'm biased, I probably am.