January 20-22, 2012, Hilton Los Angeles Airport Hotel

The MySQL Diaspora

Colin Charles


MySQL is a unique database in the sense that it is the only database out there that supports multiple storage engines. Varying storage engines have different on-disk formats, methods of indexing some are transactional and some are not, and so on. MySQL is also unique in the sense of creating a diaspora because it did not spawn but one fork, but many as it changed ownership.

Specific focus areas of the talk will include:

* A brief history of the MySQL trees at MySQL AB (MySQL 5.0, MySQL 5.1, MySQL 6.0). Microsoft Windows users tend to download the official releases from mysql.com but Unix users tend to get it from their distributions thus have myriad access to the varying solutions available

* A quick introduction to storage engines

* A look at Drizzle (a fork of the never-released MySQL 6.0 which targets the cloud) and how far it has diverged from MySQL. The aim is to be micro-kernel based with everything else as plugins. In recent times, it also has a forked InnoDB called HailDB. It is all 64-bit only, and only runs on modern Unix based operating systems

* A look at MariaDB, a branch of MySQL that constantly merges with "upstream" MySQL, but has more changes in the optimiser and kernel. It also includes more engines like Aria (crash-safe MyISAM), XtraDB (InnoDB fork from Percona), PBXT, FederatedX, SphinxSE and more. Feature-wise it has pool of threads support, table elimination (that Drizzle wanted), virtual columns, extended user statistics, segmented key caches, plugins and pluggable authentication and more including GIS and batched key access

* A look at Percona Performance Server, which is very close to MySQL mainline, but includes a forked-InnoDB called XtraDB, and some features that high performance environments and clients truly use like extended user statistics

* A look at the patches lying around from Tokutek, eBay, DeNA (HandlerSocket) and more. Where do distributions like OurDelta fit in?

* How are the InnoDB forks like XtraDB and HailDB performing? InnoDB gets so many changes from Oracle that it is truly hard to keep up

* How distributions package the various databases differently

* What does the commercial storage engine market look like?

* A short (really!) discussion on the birth of NoSQL databases and where they fit in to this entire ecosystem You're a busy DBA or developer. What solution do you choose? Which has sufficient support? Which has an active community behind it?

This talk will aim to answer that and more. Attendees will understand the whole ecosystem that is MySQL and its forks now and will leave empowered to know if they should use another branch or just stick to current Oracle-offered MySQL.

Presentation Slides: