Re: Help to find out problem with joined tables - Mailing list pgsql-performance

From Michael Fuhr
Subject Re: Help to find out problem with joined tables
Date
Msg-id 20050317044217.GA23968@winnie.fuhr.org
Whole thread Raw
In response to Help to find out problem with joined tables  ("Rodrigo Moreno" <rodrigo.miguel@terra.com.br>)
Responses RES: Help to find out problem with joined tables
List pgsql-performance
On Wed, Mar 16, 2005 at 05:10:17PM -0300, Rodrigo Moreno wrote:

> If I join movest/natope, it's fast, if I join movest/produt, it's fast too,
> but when I put a third joined table, forget, it's very slow.

What version of PostgreSQL are you using?

> All tables are vacuumed by vacummdb --full --analyze, every night
> All Indexes are reindexed every night

How many updates/deletes do the tables see between vacuums?

> Movest: +- 2 milions rows, indexed
> Natope: 30 rows PK(natope_id)
> Produt: +- 1400 Rows PK(codpro)

Could you show the table definitions, or at least the definitions
for the relevant columns and indexes?

>   ->  Seq Scan on produt c  (cost=0.00..108.26 rows=8 width=4) (actual
> time=2688.356..2875.743 rows=1 loops=6)
>         Filter: ((codpro)::numeric = 629001::numeric)

What type is produt.codpro?  You might be missing a potential index
scan here due to mismatched types.

The times (2688.356..2875.743) here look odd, although I might be
overlooking or misinterpreting something.  I don't know what else
might cause that, but one thing that can is a lot of dead tuples
in the table, hence my question about how much activity the tables
see between vacuums.  Maybe somebody else can provide a better
explanation.

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/

pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: multi-column index
Next
From: mark.lubratt@indeq.com
Date:
Subject: Join method influences scan method?