More Stable Query Execution Times by Improving InnoDB Statistics
As part of ensuring that changes to the MySQL Optimizer does not introduce performance regressions, we have started a project to create a new performance regression test suite. One component in this...
View ArticleInnoDB Persistent Statistics Save the Day
In my previous blog posting, I explained how I was able to get more stable query execution times by increasing the amount of sampling used to by InnoDB to calculate statistics. However, for my example...
View ArticleBatched Key Access Speeds Up Disk-Bound Join Queries
A new feature in MySQL 5.6.3 Development Milestone Release is Batched Key Access (BKA). BKA can be applied when an index lookup can be used to execute a join query. One example of such a query...
View ArticleImproved DBT-3 Results with MySQL 5.6.5
In addition to the Optimizer features added in earlier 5.6 Development Milestone Releases, the newly released MySQL 5.6.5 Development Milestone Release adds a few more. I think this is a good time to...
View ArticleFrom Months to Seconds with Subquery Materialization
In an earlier blog post, I showed how optimizer improvements in MySQL 5.6 gave better performance for several of the queries in the DBT-3 benchmark. However, for one of the queries, Query 18, I was not...
View ArticleSpeaking at MySQL Connect This Week-end
I will give a talk at MySQL Connect where I present examples of how MySQL 5.6 improves the performance of many of the queries in the DBT-3 benchmark. I will also be giving a brief description of the...
View ArticleWhen and How to Take Advantage of New Optimizer Features in MySQL 5.6
A few weeks ago, I made a presentation with the above title at FOSDEM in Brussels. My slides can be found here. The MySQL and Friends devroom had many interesting presentations and the room was full...
View ArticleMySQL Webinar: MySQL EXPLAIN, explained
Some time ago, Matt Lord and I delivered a webinar on the MySQL EXPLAIN feature. This webinar is available for on-demand access here. Based on the questions we got during the webinar, I want to...
View ArticleSpeaking at MySQL Central @ Open World
I am speaking at two sessions at Oracle Open World this week; one tutorial and one hands-on-lab:How to Analyze and Tune MySQL Queries for Better Performance Monday, Sep 29, 10:15 AMMySQL EXPLAIN in...
View ArticleMySQL Webinar: Analyze & Tune Queries for Better Performance
On Wednesday, February 25 at 18:00 CET (9 am Pacific Time), I will do webinar on how to analyze and tune MySQL queries for better performance. The webinar covers how the MySQL optimizer chooses a...
View ArticleMySQL Webinar: Analyze & Tune Queries for Better Performance
Thanks to everyone who attended my webinar today, and thanks for all the positive feedback in the Q&A session. Unfortunately, I was not able to respond to everyone during the 15 minutes available...
View ArticleSlides from Percona Live and airbnb Tech Talks
Last week I presented my talk, "How to Analyze and Tune SQL Queries for Better Performance" both at Percona Live in Santa Clara and at airbnb Tech Talks in San Francisco. The slides are available on...
View ArticleImproved Performance of Queries with Derived Tables
Last month/year I published a blog post on mysqlserverteam.com with an example of how MySQL 5.7 gives you improved performance for queries with derived tables.The query example was part of my tutorial...
View ArticleOracle Virtual Technology Summit
In the coming weeks, Oracle Technology Network welcomes you to join the Virtual Technology Summit which is a half-day online conference with multiple tracks. This time there is a MySQL track, and I...
View ArticleMySQL Optimizer Sessions at Oracle OpenWorld
Oracle OpenWorld starts soon and there will be a few sessions on the MySQL Optimizer. On Monday, I will have my tutorial on how to analyze and tune MySQL queries. Later in the week Manyi Lu, the...
View ArticlePresentations at OpenWorld and PerconaLive
During the last month, I presented on MySQL both at Oracle OpenWorld and Percona Live in Amsterdam. The slides from the presentations have been uploaded to the conference web sites, and you also find...
View ArticleImproved Query Performance by Using Derived Table instead of IN-subquery
MySQL 5.6 introduced semi-join transformation for IN-subqueries. This opened up for several new ways to execute such subqueries; one was no longer tied to executing the subquery once for every row of...
View Article