Your new database query ran quickly when you tested it, but seconds after deploying it, alarms are blaring and you’re scrambling to rollback before the site goes down. What happened?!?

I can “EXPLAIN”.

Queries that perform well under development load with limited datasets can easily bring a database to its knees under production load. In this talk, you will learn to decipher MySQL query execution plans, recognize portions that can be improved, and take the necessary steps to optimize your queries - all without starting any fires!


Comments are closed.

Rodolfo Puig at 16:50 on 3 Feb 2017

Great thorough and technical talk. I always walk away with something new on each of your talks. Keep up the great work!

Colin O'Dell at 16:52 on 3 Feb 2017

Even though I thought I knew a good deal on optimizing queries, I still learned some great pointers from Michael's talk. He did a great job grounding the more-advanced technical details with real-world examples and recommendations.

Kenneth Walter at 17:09 on 3 Feb 2017

Very nice explanation of commonly overlooked MySQL tools.

Impossible to cover such a broad topic in one talk, but author did it or very big part of it :) Worth hearing.

Omar Gonzalez at 10:18 on 4 Feb 2017

Great presentation. Glad to learn something I didn't know without having to go through the documentation.

Kyle Leber at 10:44 on 4 Feb 2017

Very thorough with your examples. Learned some great techniques that I will be applying in my every day development.

Eric Morris at 11:32 on 4 Feb 2017

I have been working in MySQL for years, and have picked up through experience on how to optimize many queries, but it has always be an instinctual process for me. I knew about the EXPLAIN command, but have never really used it. This talk was very focused and broke down exactly how to interpret the EXPLAIN output and some things to do with it. I will definitely be using this tool often in the future.

Thorough presentation, engaging speaker. Really great job!

Joshua Sampia at 14:39 on 4 Feb 2017

Very thorough. I loved the very concrete example and working through it in one hour.

Symeon Quimby at 12:16 on 6 Feb 2017

Loved the examples. Love that you share the same angst for the naming conventions mysql chose for EXPLAINs output that I do. You helped me wrap my head around a few parts I always found confusing due to that very issue.

Lawrence Shea at 13:10 on 7 Feb 2017

Very well done and informative!

David W. at 13:39 on 7 Feb 2017

A little over my head but only because I do not have that much experience with MySQL specifically. Great explanation though.

Justin Oakley at 14:52 on 9 Feb 2017

This was a good explanation of the meanings of the different values returned when doing an explain on the execution plan. The speaker was able to cover all of these areas within the hour and had good examples.

Steve Meyers at 15:31 on 9 Feb 2017

Well done. It was a little bit too much in the weeds, without always really explaining why certain queries would be better, but I liked the process of showing people how to use EXPLAIN to make better queries.