Towards One MILLION SQL Queries Per Second
Over the past 10+ years, MySQL has been dragged kicking and screaming
into the multi-core world and is still the most widely used open source
Ten years ago, MySQL AB's own benchark whitepapers were boasting of
HUNDREDS of transactions per second.
In 2001, what would become MySQL Cluster, on a 72 CPU system, could get
1 million reads per second using the NoSQL C++ NDBAPI.
In 2013, the current stable release (MySQL 5.6) could get 350,000
queries per second on a 32 core system with the current development
release (MySQL 5.7) reaching an astounding 500,000 SQL queries/sec.
Joining IBM at the start of 2014 it was only a matter of time before
someone found out about my (not so) secret life of 10 years knee deep in
This is the tale of scaling MySQL throughout the years and scaling MySQL
on the new POWER8 processor.
- Whare are global mutexes and what can you do about them?
- Do atomic variables solve all of your problems?
- How do you deal with NUMA?
- What tools exist to find bottlenecks and find out why you can't get any
more performance out of a system with 42% idle CPU?
- and can you *really* get to 1 million SQL queries per second on a dual socket system?
Stewart currently works for IBM in the Linux Technology Center on OpenPower firmware, KVM on POWER and MySQL on POWER, giving him a job that is even harder to explain to non-Linux geek people than ever before. Previously he worked for Percona as Director of Server Development where he oversaw development of many of Percona’s software products. He comes from many years experience in databases and free and open source software development. He’s often found hacking on the Drizzle database server, taking photos, running, brewing beer and cycling (yes, all at the same time).