Re: Why does query planner choose slower BitmapAnd ?

Поиск
Список
Период
Сортировка
От Seamus Abshere
Тема Re: Why does query planner choose slower BitmapAnd ?
Дата
Msg-id 1456164896.1017903.528502994.5CC3B499@webmail.messagingengine.com
обсуждение исходный текст
Ответ на Re: Why does query planner choose slower BitmapAnd ?  (Seamus Abshere <seamus@abshere.net>)
Список pgsql-general
On Mon, Feb 22, 2016, at 02:53 PM, Seamus Abshere wrote:
> On Mon, Feb 22, 2016, at 02:49 PM, Tom Lane wrote:
> > Seamus Abshere <seamus@abshere.net> writes:
> > > Inspired, I changed cpu_index_tuple_cost to 0.1 (default: 0.005). It "fixed" my problem by preventing the
BitmapAnd.
> > > Is this dangerous?
> >
> > Use a gentle tap, man, don't swing the hammer with quite so much abandon.
> > I'd have tried doubling the setting to start with.  Raising it 20X might
> > cause other queries to change behavior undesirably.
>
> Doubling it was enough :)

             name             | setting | boot_val
------------------------------+---------+----------
 cpu_index_tuple_cost         | 0.09    | 0.005   <- 18x boot val, 9x
 cpu_tuple_cost
 cpu_operator_cost            | 0.0025  | 0.0025
 cpu_tuple_cost               | 0.01    | 0.01

In the end I'm back to the big hammer.

I found that larger cities (e.g., more results from the city index)
required a larger cpu_index_tuple_cost to prevent the BitmapAnd.

Now cpu_index_tuple_cost is set to 0.09, which is 18x its boot_val and
9x cpu_tuple_cost... which seems strange.

Logically, should I be changing cpu_operator_cost instead?


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

Предыдущее
От: Seamus Abshere
Дата:
Сообщение: Re: Why does query planner choose slower BitmapAnd ?
Следующее
От: CS DBA
Дата:
Сообщение: decoding BLOB's