From: | Alexander Staubo <alex(at)purefiction(dot)net> |
---|---|
To: | Arnaud Lesauvage <thewild(at)freesurf(dot)fr> |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: Poor performance on very simple query ? |
Date: | 2006-10-03 12:08:03 |
Message-ID: | 3B2D7EC8-8E9B-46A3-A15F-4F554E10EA3B@purefiction.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On Oct 3, 2006, at 13:25 , Arnaud Lesauvage wrote:
> The problem is that simple select queries with the primary key in
> the WHERE statement take very long to run.
> For example, this query returns only 7 rows and takes about 1
> second to run !
> SELECT * FROM table1 WHERE gid in (33,110,65,84,92,94,13,7,68,41);
This is a very small table, but generally speaking, such queries
benefit from an index; eg.,
create index table1_gid on table1 (gid);
Note that PostgreSQL may still perform a sequential scan if it thinks
this has a lower cost, eg. for small tables that span just a few pages.
> I have run "VACUUM FULL" on this table many times... I don't know
> what to try next !
PostgreSQL's query planner relies on table statistics to perform
certain optimizations; make sure you run "analyze table1".
Alexander.
From | Date | Subject | |
---|---|---|---|
Next Message | Tobias Brox | 2006-10-03 12:10:04 | Re: Poor performance on very simple query ? |
Previous Message | Arnaud Lesauvage | 2006-10-03 12:04:22 | Re: Poor performance on very simple query ? |