I came across this blog post on MySQL performance tuning. Basically they implemented a custom plugin to emulate NoSQL style look ups in MySQL and got some amaaazing performance numbers.
The premise here is that a lot of sites today use MySQL as storage back end, and a lot of them use memcached as a caching mechanism to speed things up as necessary. You would typically store results from complex queries like summaries, and things like rendered HTML output in memcached, while trying to use mostly primary key lookups on the MySQL side, to get the most performance out of your setup.
Yoshi (the author of the post) goes through a pretty comprehensive set of benchmarks and profiling results to show that MySQL still has quite a bit of overhead in parsing and interpreting the SQL code. MySQL basically always needs to spend time doing the basics:
Parsing SQL statements
Opening, locking tables
Making SQL execution plans
Unlocking, closing tables
So they continued to write a plugin that allows you to do primary key lookups in a style very close to a NoSQL implementation, where's you're basically doing a direct hash table lookup. They posted about a 700% performance boost, which is of course amaaazing.
Hit the source link to read the details, it's a long post, but well worth the read.


