Re: Slow query problem

Поиск
Список
Период
Сортировка
От Bradley Tate
Тема Re: Slow query problem
Дата
Msg-id 3FFEC075.2090001@objectmastery.com
обсуждение исходный текст
Ответ на Re: Slow query problem  (Dennis Björklund <db@zigo.dhs.org>)
Список pgsql-performance
Dennis Björklund wrote:

>On Fri, 9 Jan 2004, Richard Huxton wrote:
>
>
>
>>>>select invheadref, invprodref, sum(units)
>>>>from invtran
>>>>group by invheadref, invprodref
>>>>
>>>>
>>>For the above query, shouldn't you have one index for both columns
>>>(invheadref, invprodref). Then it should not need to sort at all to do the
>>>grouping and it should all be fast.
>>>
>>>
>>Not sure if that would make a difference here, since the whole table is being
>>read.
>>
>>
>
>The goal was to avoid the sorting which should not be needed with that
>index (I hope). So I still think that it would help in this case.
>
>
>
Thanks for the advice. I tried creating a compound index along with
clustering the invtran table on it, adding another 512MB RAM, increasing
shared_buffers to 60000 and increasing sort_mem to 100MB, playing with
effective cache size in postgresql.conf. This cut the execution time
down to 4 minutes, which was helpful but still way behind firebird.
There was still an awful lot of disk activity while it was happening
which seems to imply lots of sorting going on (?)

Invtran is a big table but it is clustered and static i.e. no updates,
select statements only.

Mostly my performance problems are with sorts - group by, order by. I
was hoping for better results than I've been getting so far.

Thanks.

p.s.
Can someone confirm whether this should work from pgadmin3? i.e.  will
the size of the sort_mem be changed for the duration of the query or
session?

set sort_mem  to 100000;
select ....etc....;




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

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: Slow query problem
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Slow query problem