Wednesday, March 25, 2009

MySQL Scalability and Performance Directions

MySQL is continuing to grow at a rapid pace in the market place. Continued high growth areas for MySQL continue to include the web application, gaming and embedded systems space. For small and medium sized OLTP environments MySQL continues to increase in popularity. MySQL can have incredible scalability as long as it scales horizontally. However with today's hardware adding more CPU and memory capability, it is important that MySQL be able to grow to much larger sizes through vertical scalability.

There are a lot of upcoming changes in the MySQL world that are going to add significant performance, scalability and feature/functionality. The key areas I will be talking about include:
  • MySQL Version 6 - (currently in alpha) will add significant performance, availability, scalability and online features.
  • Falcon - (currently in alpha) New storage engine with MySQL 6 that will add increased scalability, availability and online features to replace the InnoDB storage engine.
  • Maria - (currently in alpha) New crash safe storage engine that will add increased scalability, availability and transaction safe features to replace the MYISAM storage engine.
  • InnoDB Plugin - (close to end of beta) Oracle offers an InnoDB plug-in that provides a number of important performance, scalability, online functionality and reduced maintenance features.
Each storage engine: Falcon, Maria and the InnoDB Plugin provide a lot of important enhancements that customers are going to want. It will be important to watch the maturity of each of these storage engines as they move from alpha and release candidate versions to general availability (production).


2 comments:

Morgan Tocker said...

Hi George,

Technically Falcon is in "beta", but in an Alpha MySQL release (go figure):

http://blogs.mysql.com/robin/2008/03/11/falcon-storage-engine-beta-now-available/

Oracle describes the release state of the InnoDB plugin as something like "the Early Adopter release". This is a somewhat more obscure state to what we're used to, so I'm not sure how to translate it to Alpha/Beta/RC. It's probably unfair to call it alpha, since there are already people using it (and the XtraDB fork) in production. I haven't yet come across any Maria or Falcon installs in the wild, it's probably still a little early.

Anonymous said...

I think you'll be interested in the ScaleDB storage engine, which will soon provide shared-disk clustering (like Oracle RAC) to MySQL.