Re: [HACKERS] Runtime Partition Pruning

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: [HACKERS] Runtime Partition Pruning
Дата
Msg-id CA+TgmoZv8sd9cKyYtHwmd_13+BAjkVKo=ECe7G98tBK5Ejwatw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] Runtime Partition Pruning  (David Rowley <david.rowley@2ndquadrant.com>)
Ответы Re: [HACKERS] Runtime Partition Pruning  (David Rowley <david.rowley@2ndquadrant.com>)
Список pgsql-hackers
On Thu, Dec 21, 2017 at 6:53 PM, David Rowley
<david.rowley@2ndquadrant.com> wrote:
> On 22 December 2017 at 12:45, Robert Haas <robertmhaas@gmail.com> wrote:
>> PREPARE q3 (int, int) AS SELECT * FROM unpartitioned_table WHERE
>> partkey BETWEEN $1 AND $2;
>>
>> ...that has to decide whether to use an index.  And to do that it has
>> to estimate what fraction of the table will match the BETWEEN clause.
>> That may be an uninformed guess, but it guesses something.  We
>> probably want to do something here that makes the guess for a
>> partitioned_table similar to the guess for an unpartitioned_table.
>
> Are you considering some sort of clauselist_selectivity() estimate on
> the given parameters and comparing that to the same selectivities that
> were determined for the previous custom plans?

No, I don't think comparing to previous custom plans is a workable
approach.  I was thinking, rather, that if we know for example that
we've doing pruning on partition_column = $1, then we know that only
one partition will match.  That's probably a common case.  If we've
got partition_column > $1, we could assume that, say, 75% of the
partitions would match.  partition_column BETWEEN $1 and $2 is
probably a bit more selective, so maybe we assume 50% of the
partitions would match.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


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

Предыдущее
От: Amit Langote
Дата:
Сообщение: Re: [HACKERS] path toward faster partition pruning
Следующее
От: Robert Haas
Дата:
Сообщение: Re: WIP: a way forward on bootstrap data