Tag - explain

MongoDB: Investigate Queries with explain() and Index Usage (part 2)

MongoDB explain() method optimization tool

This is the second part of a two parts series. In MongoDB: index usage and MongoDB explain() we introduced the main index types supported by MongoDB, and how to create and use them. In this second article, we are going to see some examples on how to use explain() method to investigate queries. Do […]

Read more

Webinar Thu 6/21: How to Analyze and Tune MySQL Queries for Better Performance

database query tuning

Please join Percona’s MySQL Database Administrator, Brad Mickel as he presents How to Analyze and Tune MySQL Queries for Better Performance on Thursday, June 21st, 2018, at 10:00 AM PDT (UTC-7) / 1:00 PM EDT (UTC-4).
Register Now
 
Query performance is essential in making any application successful. In order to finely tune your queries you first […]

Read more

Webinar Thursday, October 19, 2017: What You Need to Get the Most Out of Indexes – Part 2

Indexes

Join Percona’s Senior Architect, Matthew Boehm, as he presents What You Need to Get the Most Out of Indexes – Part 2 webinar on Thursday, October 19, 2017, at 11:00 am PDT / 2:00 pm EDT (UTC-7).
Register Now

Proper indexing is key to database performance. Finely tune your query writing and database performance with tips […]

Read more

Introduction to Troubleshooting Performance – Troubleshooting Slow Queries webinar: Q & A

InnoDB Troubleshooting

In this blog, I will provide answers to the Q & A for the Troubleshooting Slow Queries webinar.
First, I want to thank you for attending the April 28 webinar. The recording and slides for the webinar are available here. Below is the list of your questions that I wasn’t able to answer during the webinar, with […]

Read more

EXPLAIN FORMAT=JSON: nested_loop makes JOIN hierarchy transparent

EXPLAIN FORMAT=JSON

Once again it’s time for another EXPLAIN FORMAT=JSON is cool! post. This post will discuss how EXPLAIN FORMAT=JSON allows the nested_loop command to make the JOIN operation hierarchy transparent.
The regular
EXPLAIN  command lists each table that participates in a 
JOIN  operation on a single row. This works perfectly for simple queries:

MySQL

mysql> explain select * from […]

Read more

EXPLAIN FORMAT=JSON: cost_info knows why optimizer prefers one index to another

Percona Server 5.7 performance improvements

Time for another entry in the EXPLAIN FORMAT=JSON is cool! series of blog posts. This time we’ll discuss how using EXPLAIN FORMAT=JSON allows you to see that
cost_info  knows why the optimizer prefers one index to another.
Tables often have more than one index. Any of these indexes can be used to resolve query. The optimizer has […]

Read more

EXPLAIN FORMAT=JSON: buffer_result is not hidden!

MongoDB System Tuning

Time for another entry in the EXPLAIN FORMAT=JSON is cool! series. Today we’re going to look at how you can view the buffer result using JSON (instead of the regular
EXPLAIN command.
Regular
EXPLAIN does not identify if
SQL_BUFFER_RESULT was used at all. To demonstrate, let’s run this query:

MySQL

mysql> explain select * from salariesG
*************************** 1. row ***************************
[…]

Read more

EXPLAIN FORMAT=JSON knows everything about UNIONs: union_result and query_specifications

Ready for another post in the EXPLAIN FORMAT=JSON is Cool series! Great! This post will discuss how to see all the information that is contained in optimized queries with
UNION using the
union_result and
query_specifications commands.
 
When optimizing complicated queries with
UNION, it is easy to get lost in the regular
EXPLAIN  output trying to identify which part of […]

Read more

EXPLAIN FORMAT=JSON has details for subqueries in HAVING, nested selects and subqueries that update values

Over several previous blog posts, we’ve already discussed what information the 
EXPLAIN FORMAT=JSON output provides for some subqueries. You can review those discussions here, here and here. EXPLAIN FORMAT=JSON shows many details that you can’t get with other commands. Let’s now finish this topic and discuss the output for the rest of the subquery types.
First, let’s look at the […]

Read more

ordering_operation: EXPLAIN FORMAT=JSON knows everything about ORDER BY processing

EXPLAIN FORMAT=JSON

We’ve already discussed using the ORDER BY clause with subqueries. You can also, however, use the 
ORDER BY clause with sorting results of one of the columns. Actually, this is most common way to use this clause.
Sometimes such queries require using temporary tables or filesort, and a regular
EXPLAIN  clause provides this information. But it doesn’t show if […]

Read more