As we started to make the switch to MySQL, several of our managers and developers (and I) assumed we’d use clustering to improve availability and performance. (Performance, because they thought we’d be able to spread our load among clustered servers.)
I read up on storage engines and got to explain more than once that we couldn’t use clustering, much to their surprise and initial disbelief.
Clustering relies on a particular database engine (NDB) that is currently an in-memory-only engine. (Ie, all your data has to fit in memory.) Since our database is much bigger than our RAM, we couldn’t use it. (Future versions promise to allow data stored on disk.) We ended up using the InnoDB storage engine, and replication for availability and performance.
So what is a storage engine? If you don’t know, you need to find out before moving to MySQL.
MySQL implements a sort of data-handling architecture, into which …
[Read more]