|
|
Choosing A Webhost: |
SQL stupid query plan... terrible performance !: msg#00291db.postgresql.performance
Hi, I have one performance issue... and realy have no idea what's going on... When I set enable_seqscan to 0, query2 runs the same way... upload => 60667 entities uploadfield => 506316 entities Query1: select count(*) from Upload NATURAL JOIN UploadField Where Upload.ShopID = 123123; 181.944 ms Query2: select count(*) from Upload NATURAL JOIN UploadField Where Upload.UploadID = 123123; 1136.024 ms Greetings, Jim J. ------- Details: PostgreSQL 7.4.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5) QUERY1 PLAN -------------------------------------------------------------------------------------------------------------------- Aggregate (cost=1972.50..1972.50 rows=1 width=0) (actual time=181.657..181.658 rows=1 loops=1) -> Nested Loop (cost=0.00..1972.46 rows=17 width=0) (actual time=181.610..181.610 rows=0 loops=1) -> Seq Scan on upload (cost=0.00..1945.34 rows=2 width=8) (actual time=181.597..181.597 rows=0 loops=1) Filter: (shopid = 123123) -> Index Scan using relationship_3_fk on uploadfield (cost=0.00..13.44 rows=10 width=8) (never executed) Index Cond: ("outer".uploadid = uploadfield.uploadid) Total runtime: 181.944 ms QUERY2 PLAN ---------------------------------------------------------------------------------------------------------------------------- Aggregate (cost=15886.74..15886.74 rows=1 width=0) (actual time=1135.804..1135.806 rows=1 loops=1) -> Nested Loop (cost=1945.34..15886.69 rows=20 width=0) (actual time=1135.765..1135.765 rows=0 loops=1) -> Seq Scan on uploadfield (cost=0.00..13940.95 rows=10 width=8) (actual time=1135.754..1135.754 rows=0 loops=1) Filter: (123123 = uploadid) -> Materialize (cost=1945.34..1945.36 rows=2 width=8) (never executed) -> Seq Scan on upload (cost=0.00..1945.34 rows=2 width=8) (never executed) Filter: (uploadid = 123123) Total runtime: 1136.024 ms Table "public.upload" Column | Type | Modifiers ------------+------------------------+----------- uploadid | bigint | not null nativedb | text | not null shopid | bigint | not null Indexes: "pk_upload" primary key, btree (uploadid) "nativedb" btree (nativedb) "uploadshopid" btree (shopid) Table "public.uploadfield" Column | Type | Modifiers ---------------+----------+----------- uploadfieldid | bigint | not null fieldnameid | smallint | not null uploadid | bigint | not null Indexes: "pk_uploadfield" primary key, btree (uploadfieldid) "relationship_3_fk" btree (uploadid) "relationship_4_fk" btree (fieldnameid) Foreign-key constraints: "fk_uploadfi_fieldname_fieldnam" FOREIGN KEY (fieldnameid) REFERENCES fieldname(fieldnameid) ON UPDATE RESTRICT ON DELETE RESTRICT "fk_uploadfi_uploadfie_upload" FOREIGN KEY (uploadid) REFERENCES upload(uploadid) ON UPDATE RESTRICT ON DELETE RESTRICT ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: postgres 7.4 at 100%, Christopher Kings-Lynne |
|---|---|
| Next by Date: | Re: SQL stupid query plan... terrible performance !, Jeff |
| Previous by Thread: | How can one see what queries are running withing a postgres instance?, P.A.M. van Dam |
| Next by Thread: | Re: SQL stupid query plan... terrible performance !, Jeff |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
Free MagazinesCisco NewsReceive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business. subscribe Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field. subscribe The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business. subscribe Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company. subscribe Total Telecom Total Telecom is "The Economist of the communications industry". subscribe |