Re: Caching query plan costs

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: Caching query plan costs
Дата
Msg-id 998D0721-3679-4ADE-BDAE-44BF87B82724@anarazel.de
обсуждение исходный текст
Ответ на Re: Caching query plan costs  (Bruce Momjian <bruce@momjian.us>)
Ответы Re: Caching query plan costs  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-hackers

On September 3, 2018 11:33:35 AM PDT, Bruce Momjian <bruce@momjian.us> wrote:
>On Mon, Sep  3, 2018 at 01:30:33PM -0400, Tom Lane wrote:
>> Bruce Momjian <bruce@momjian.us> writes:
>> > What if we globally or locally cache the _cost_ of plans, so we can
>> > consult that cache before planning and enable certain
>optimizations?
>>
>> But what would you use as cache key?  And how's this help if we
>haven't
>
>Uh, I assume we would do what pg_stat_statements does and remove the
>constants an hash that.

That's not particularly cheap... Constants heavily influence planning choices, so I don't think they actually could be
removed.


>> seen a similar query before in the session?
>
>Well, if it was global we could use output from another session.
>
>I guess my point is that this only used to turn on micro-optimizations
>and maybe parallelism

What kind of micro opts are you thinking of? The cases I remember are more in the vein of doing additional complex
optimizations(join removal, transforming ORs into UNION, more complex analysis of predicates...). 

Parallelism would definitely benefit from earlier knowledge, although I suspect some base rel analysis might be more
realistic,because it's far from guaranteed that queries are ever repeated in a similar enough manner. 



>  and JIT, so it doesn't have to be 100% accurate.

JIT decision is done after main planning, so we know the cost.
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Out arguments name of "pg_identify_object_as_address" function in 9.5.14 and 11beta3
Следующее
От: Andrew Gierth
Дата:
Сообщение: Re: Out arguments name of "pg_identify_object_as_address" function in 9.5.14 and 11beta3