ANALYZE FORMAT=JSON
is a mix of the EXPLAIN FORMAT=JSON
and ANALYZE
statement features. ANALYZE FORMAT=JSON $statement
will execute $statement
, and then print the output of EXPLAIN FORMAT=JSON
, amended with the data from query execution.
You can get the following also from tabular ANALYZE
statement form:
r_rows
is provided for any node that reads rows. It shows how many rows were read, on average r_filtered
is provided whenever there is a condition that is checked. It shows the percentage of rows left after checking the condition. The most important data that is not available in tabula ANALYZE
statement are:
r_loops
field. This shows how many times the node was executed. Most query plan elements have this field. r_total_time_ms
field. It shows how much time in total was spent executing this node. If the node has subnodes, their execution time is included. r_buffer_size
field. Query plan nodes that make use of buffers report the size of buffer that was was used. filesort
node reports whether sorting was done with LIMIT n
parameter, and how many rows were in the sort result. block-nl-join
node has r_loops
field, which allows to tell whether Using join buffer
was efficient range-checked-for-each-record
reports counters that show the result of the check. expression-cache
is used for subqueries, and it reports how many times the cache was used, and what cache hit ratio was. union_result
node has r_rows
so one can see how many rows were produced after UNION operation
© 2019 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/analyze-formatjson/