Обсуждение: is a special cost for external sort?

Поиск
Список
Период
Сортировка

is a special cost for external sort?

От
Pavel Stehule
Дата:
Hello

I found a slow query with large external sort. I expect, so external
sort should be penalized. Is it?

Regards

Pavel



Re: is a special cost for external sort?

От
Tom Lane
Дата:
Pavel Stehule <pavel.stehule@gmail.com> writes:
> I found a slow query with large external sort. I expect, so external
> sort should be penalized. Is it?

See cost_sort() in src/backend/optimizer/path/costsize.c
        regards, tom lane



Re: is a special cost for external sort?

От
Jeff Janes
Дата:
On Thu, Jul 18, 2013 at 9:14 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> Hello
>
> I found a slow query with large external sort. I expect, so external
> sort should be penalized. Is it?

It tries to, but it doesn't seem to be much good at it.  In
particular, I think it does a poor job of estimating the CPU cost of
an external sort relative to an in-memory sort of a slightly smaller
data set.  In my experience adding the single tuple that actually
pushes you over the work_mem limit costs about 3x in CPU.

It is one of those things I started looking into a few times, but
never got anywhere before getting distracted.

Cheers,

Jeff