← Back to team overview

maria-developers team mailing list archive

Re: [Maria-discuss] Json Explain


I do not see why this should be a concern for the optimizer team.

The output from EXPLAIN (in any format) does not affect optimizer's
operation but only provides information of *optimizer result*. The format
chosen is (?) applied is *after* not *before* or *during* the optimization

TRADITIONAL EXPLAIN returns the result as an **array**.  JSON EXPLAIN
returns the result as a single (Json-formatted) **string** (not unlike SHOW
ENGINE INNODB STATUS, btw).  But both should have exactly the same
information - and if they don't it is a bug with JSON EXPLAIN in MySQL 5.6

But as I am not well-versed in server internals, I could have
ovelooked/misunderstood something, of course.

-- Peter

On Fri, Sep 28, 2012 at 5:18 PM, Peter Laursen <peter_laursen@xxxxxxxxxx>wrote:

> @wlad is completely right!
> Workbench introduced a Visual Explain based on JSON EXPLAIN as Blogged
> here: http://www.arubin.org/blog/2012/09/26/mysql-visual-explain/
> The very reason why JSON EXPLAIN was introduced in MySQL 5.6 could be that
> Oracle develops the server and tools (WB, Enterprirse Monitor primarily) in
> parallel.  Some recently introduced features in the server could be
> introduced for the primary reason that they should be 'exploited' by MEM
> and/or WB.  JSON EXPLAIN is one. Another example is the Performance_Schema
> table introduced in 5.6.6 (I don't remember the table name)  that records
> an 'aggregated summary' of queries' performance. Actually this table has
> about the same information as what MONyog 'Query Analyzer' module displays
> in its most simple display mode (but MONyog can be 'drilled down' to a more
> detailed view).
> So Oracle *thinks* the server and their most important tools *as a whole*,
> I think. We/Webyog cannot ignore this, as we compete with Oracle (SQLyog
> <-> WB, MONyog <-> MEM).  We have to consider to implement a more intuitive
> and advisory way of displaying EXPLAIN results (for non-expert users
> primarily of course). The JSON format is interesting for us in the context.
> -- Peter
> On Fri, Sep 28, 2012 at 4:50 PM, Vladislav Vaintroub <
> wlad@xxxxxxxxxxxxxxxx> wrote:
>> > -----Original Message-----
>> > From: maria-discuss-
>> > bounces+wlad=montyprogram.com@xxxxxxxxxxxxxxxxxxx [mailto:maria-
>> > discuss-bounces+wlad=montyprogram.com@xxxxxxxxxxxxxxxxxxx] On Behalf
>> > Of Michael Widenius
>> > Sent: Freitag, 28. September 2012 16:04
>> > To: Peter Laursen; igor@xxxxxxxxxxxx; timour@xxxxxxxxxxxx;
>> > psergey@xxxxxxxxxxxx
>> > Cc: Maria Discuss; Maria Developers
>> > Subject: Re: [Maria-discuss] [Maria-developers] Json Explain
>> >
>> >
>> > For the moment we don't have a plan for that.
>> >
>> > The main reason is that the MariadB optimizer people don't like the
>> > implementation and we are not sure how useful the current output
>> > really is.
>> >
>> I guess json  is not for normal people to read , it is for programs to
>> analyze and ,for example, display in a visually pleasing fashion. I
>> believe
>> this is the reason why Peter asks, and (I guess) the reason why Workbench
>> has visual explain feature now for 5.6+.
>> http://www.arubin.org/blog/2012/09/26/mysql-visual-explain/

Follow ups