Re: Query only slow on first run - Mailing list pgsql-performance

From Scott Marlowe
Subject Re: Query only slow on first run
Date
Msg-id dcc563d10711282249k52b72257mdfdd015fb9b6448a@mail.gmail.com
Whole thread Raw
In response to Re: Query only slow on first run  (cluster <skrald@amossen.dk>)
List pgsql-performance
On Nov 28, 2007 3:15 PM, cluster <skrald@amossen.dk> wrote:
> > The indexes don't contain visibility information, so Postgres has to look up
> > the row on disk to verify it isn't dead.
>
> I guess this fact drastically decreases the performance. :-(
> The number of rows with a random_number will just grow over time while
> the number of questions with status = 1 will always be somewhat constant
> at about 10.000 or most likely much less.

Have you tried a partial index?

create index xyz on tablename (random) where status = 1

> I could really use any kind of suggestion on how to improve the query in
> order to make it scale better for large data sets The 6-7000 ms for a
> clean run is really a showstopper. Need to get it below 70 ms somehow.

Also, look into clustering the table on status or random every so often.

More importantly, you might need to research a faster way to get your
random results

pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: Query only slow on first run
Next
From: cluster
Date:
Subject: Re: Query only slow on first run