Re: query planner weirdness?

Поиск
Список
Период
Сортировка
От Adam Rich
Тема Re: query planner weirdness?
Дата
Msg-id 06b201c8d8da$d8111f10$88335d30$@r@sbcglobal.net
обсуждение исходный текст
Ответ на Re: query planner weirdness?  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: query planner weirdness?  (Steve Atkins <steve@blighty.com>)
Список pgsql-general
>
> "Bob Duffey" <bobduffey68@gmail.com> writes:
> > I'm seeing some query plans that I'm not expecting.  The table in
> question
> > is reasonably big (130,000,000 rows).  The table has a primary key,
> indexed
> > by one field ("ID", of type bigint).  Thus, I would expect the
> following
> > query to simply scan through the table using the primary key:
>
> > select * from "T" order by "ID"
>
> This is not wrong, or at least not obviously wrong.  A full-table
> indexscan is often slower than seqscan-and-sort.  If the particular
> case is wrong for you, you need to look at adjusting the planner's
> cost parameters to match your environment.  But you didn't provide any
> evidence that the chosen plan is actually worse than the alternative
> ...

I think I understand what Bob's getting at when he mentions blocking.
The seqscan-and-sort would return the last record faster, but the
indexscan returns the first record faster.  If you're iterating
through the records via a cursor, the indexscan behavior would be
more desirable.  You could get the initial rows back without waiting
for all 130 million to be fetched and sorted.

In oracle, there is a first-rows vs. all-rows query hint for this sort
of thing.









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

Предыдущее
От: "Bob Duffey"
Дата:
Сообщение: Re: query planner weirdness?
Следующее
От: "Bob Duffey"
Дата:
Сообщение: Re: query planner weirdness?