From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Miguel Juliÿffffe1n de la Fuente <jmdelafuente(at)yahoo(dot)com(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Optimizar query |
Date: | 2006-07-24 16:18:03 |
Message-ID: | 20060724161803.GH5223@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Miguel Juliÿffffe1n de la Fuente escribió:
> Hola lista, tengo instalado "PostgreSQL 8.0.1 on i686-pc-linux-gnu,
> compiled by GCC 2.95.4" sobre debian, estoy tratando de ejecutar un
> consulta que sobre el resultado de una funcion (shortest_path devuelve
> aprox. 50 filas) debe unir otra tabla (calles_tmp de 30000 filas) a
> traves de un campo indizado en esta tabla y a su vez con otro campo de
> esta segunda tabla unir una tercera (calles_nombre de 1100 filas) que
> tambien dispone de indice por el campo buscado:
Hola, puedes repetir este correo pero reemplazando los EXPLAIN por
EXPLAIN ANALYZE por favor?
Es posible que sea necesario jugar con el collapse_from_limit (o como se
llame el parametro) y especificar un orden de join "a mano". Pero antes
de hacer eso seria bueno verificar si el problema no es en realidad que
las estimaciones estan muy desviadas de la realidad.
Por otro lado, creo que la estimacion para shortest_path() forzosamente
debe ser bastante mala. (Deberia estimar 1000 filas, constante). Eso
echa a perder cualquier intento de encontrar una buena ejecucion. Si el
problema es ese, entonces creo que lo mas facil seria traer los
resultados de shortest_path() a una tabla temporal, hacer ANALYZE de
ella, y finalmente ejecutar el resto de la consulta contra esa tabla
temporal, donde las estimaciones pueden hacerse mucho mejor (==> mejor
plan de ejecucion).
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Miguel Juliÿffffe1n de la Fuente | 2006-07-24 16:39:56 | Re: Optimizar query |
Previous Message | Miguel Juliÿffffe1n de la Fuente | 2006-07-24 15:42:26 | Optimizar query |