From: | "Luis Guevara" <luis(dot)a(dot)guevara(at)gmail(dot)com> |
---|---|
To: | PostgreSQL-foro <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Ayuda con Explain de consulta |
Date: | 2007-05-24 17:40:36 |
Message-ID: | fa2b6e3a0705241040s672f6945l380a063ac3631aa8@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Tengo la siguiente consulta:
select a.plem_id
from planilla_empleado_movimiento a
left join planilla_empleado b using (plem_id)
where b.plan_id=388
Las tablas tienen:
planilla_empleado ---> 135,000 registros
planilla_empleado_movimiento ---> 4,900,000 registros
Su explain analyze es el siguiente:
QUERY PLAN
Hash Join (cost=10115.59..195262.73 rows=112620 width=4) (actual time=
2205.884..3482.227 rows=138918 loops=1)
Hash Cond: (a.plem_id = b.plem_id)
-> Seq Scan on planilla_empleado_movimiento a
(cost=0.00..159788.89rows=1384689 width=4) (actual time=
0.036..2733.052 rows=1384690 loops=1)
-> Hash (cost=10101.01..10101.01 rows=5829 width=4) (actual time=
15.907..15.907 rows=6893 loops=1)
-> Index Scan using planilla_empleado_idx1 on planilla_empleado b
(cost=0.00..10101.01 rows=5829 width=4) (actual time=0.098..11.105 rows=6893
loops=1)
Index Cond: (plan_id = 388)
Total runtime: 3522.568 ms
La consulta tarda 5 segundos. ¿Es posible mejorar este tiempo?
Tengo Postgres 8.2 en un servidor Linux con 4GB de RAM
Agradezco sus comentarios
--
atte.
Luis Guevara
From | Date | Subject | |
---|---|---|---|
Next Message | Oscar Cano | 2007-05-24 17:52:36 | Re: Ver camppos de una tabla |
Previous Message | Lenin Aguirre | 2007-05-24 17:32:31 | Ver camppos de una tabla |