Re: index scan on =, but not < ?

From: Bruno Wolff III <bruno(at)wolff(dot)to>
To: Rick Schumeyer <rschumeyer(at)ieee(dot)org>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: index scan on =, but not < ?
Date: 2005-03-09 04:38:21
Message-ID: 20050309043821.GA1569@wolff.to
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Tue, Mar 08, 2005 at 13:35:53 -0500,
Rick Schumeyer <rschumeyer(at)ieee(dot)org> wrote:
> I have two index questions. The first is about an issue that has been
> recently discussed,
>
> and I just wanted to be sure of my understanding. Functions like count(),
> max(), etc. will
>
> use sequential scans instead of index scans because the index doesn't know
> which rows
>
> are actually visible.is this correct?

Not exactly. If the number of rows to be examined is on the order of 5%
of the table, an index scan will probably be slower than a sequential
scan. The visibility issue makes index scans slower in the case that
the only columns of interest are in the index.
Another issue is that max could in theory use an index, but there isn't
a mechanism for Postgres to know how to do this in general for aggregates
where it is possible. There have been discussions in the past about
how this could be done, but no one has done it yet.

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Jim C. Nasby 2005-03-09 04:55:19 Re: index scan on =, but not < ?
Previous Message Tom Lane 2005-03-09 04:37:58 Re: Why would writes to pgsql_tmp bottleneck at 1mb/s?