Re: [GENERAL] How to evaluate "explain analyze" correctly after"explain" for the same statement ?

Поиск
Список
Период
Сортировка
От Steve Atkins
Тема Re: [GENERAL] How to evaluate "explain analyze" correctly after"explain" for the same statement ?
Дата
Msg-id 626A9493-ED0B-43A1-A690-C32C321CA1BA@blighty.com
обсуждение исходный текст
Ответ на [GENERAL] How to evaluate "explain analyze" correctly after "explain" for thesame statement ?  (Patrick B <patrickbakerbr@gmail.com>)
Ответы Re: [GENERAL] How to evaluate "explain analyze" correctly after"explain" for the same statement ?  (Patrick B <patrickbakerbr@gmail.com>)
Список pgsql-general
> On Feb 15, 2017, at 3:58 PM, Patrick B <patrickbakerbr@gmail.com> wrote:
>
> Hi all,
>
> I just got a quick question about warm-cache. I'm using PG 9.2.
>
> When I execute this statement soon after I start/restart the database:
>
> explain select id from test where id = 124;
>
> The runtime is 40ms.
>
> Then, If I execute this statement just after the above one;
>
> explain analyze select id from test where id = 124;
>
> The runtime is 0.8ms.

This doesn't make seem to make sense.

"explain select ..." doesn't run the query. All it shows is the plan the planner chose and some estimates of the "cost"
ofdifferent steps, with no time. Where are you getting 40ms from in this case? 

"explain analyze select ..." does run the query, along with some - potentially non-trivial - instrumentation to measure
eachstep of the plan, so you can see whether the planner estimates are reasonable or wildly off. 

Cheers,
  Steve



В списке pgsql-general по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: [GENERAL] Potential Bug: Frequent Unnecessary Degeneration
Следующее
От: "Joshua D. Drake"
Дата:
Сообщение: Re: [GENERAL] Can't restart Postgres