Re: So, is COUNT(*) fast now?

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: pgsql-hackers@postgresql.org
Cc: Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>
Date: 2011-10-22T09:49:36Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Remove pg_upgrade dependency on the 'postgres' database existing in the

On Friday, October 21, 2011 08:14:12 PM Robert Haas wrote:
> On Fri, Oct 21, 2011 at 2:08 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> > Robert Haas <robertmhaas@gmail.com> writes:
> >> On Fri, Oct 21, 2011 at 1:18 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> >>> I don't know why you'd imagine that touching an index is free, or even
> >>> cheap, CPU-wise.  The whole point of the index-only optimization is to
> >>> avoid I/O.  When you try it on a case where there's no I/O to be saved,
> >>> and no shared-buffers contention to be avoided, there's no way it's
> >>> going to be a win.
> >> 
> >> Well, call me naive, but I would have thought touching six times less
> >> data would make the operation run faster, not slower.
> > 
> > It's not "touching six times less data".  It's touching the exact same
> > number of tuples either way, just index tuples in one case and heap
> > tuples in the other.
> 
> Yeah, but it works out to fewer pages.
But access to those is not sequential. I guess if you measure cache hit ratios 
the index scan will come out significantly worse.


Andres