Skip site navigation (1) Skip section navigation (2)

Re: Inconsistent performance

From: Christopher Browne <cbbrowne(at)libertyrms(dot)info>
To: pgsql-performance(at)postgresql(dot)org
Subject: Re: Inconsistent performance
Date: 2003-09-15 22:18:50
Message-ID: 60d6e1lmph.fsf@dev6.int.libertyrms.info (view raw or flat)
Thread:
Lists: pgsql-performance
jbove(at)vetstar(dot)com (Joseph Bove) writes:
> I do a rather simple query: select count (*) from large-table where
> column = some value;
>
> About 80% of the time, the response time is sub-second. However, at
> 10% of the time, the response time is 5 - 10 seconds.

Does it seem data-dependent?

That is, does the time vary for different values of "some value?"

If a particular value is particularly common, the system might well
revert to a sequential scan, making the assumption that it is quicker
to look at every page in the table rather than to walk through
Enormous Numbers of records.

I had a case very similar to this where a table had _incredible_
skewing of this sort where there were a small number of column values
that occurred hundreds of thousands of times, and other column values
only occurred a handful of times.

I was able to get Excellent Performance back by setting up two partial
indices:
 - One for WHERE THIS_COLUMN > VITAL_VALUE;
 - One for WHERE THIS_COLUMN < VITAL_VALUE;

The REALLY COMMON values were in the range < VITAL_VALUE.
-- 
output = ("cbbrowne" "@" "libertyrms.info")
<http://dev6.int.libertyrms.com/>
Christopher Browne
(416) 646 3304 x124 (land)

In response to

pgsql-performance by date

Next:From: Joseph BoveDate: 2003-09-15 22:24:27
Subject: Re: Inconsistent performance
Previous:From: Josh BerkusDate: 2003-09-15 22:15:09
Subject: Re: Inconsistent performance

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group