From: | "Fernando Hevia" <fhevia(at)ip-tel(dot)com(dot)ar> |
---|---|
To: | "'Francisco Manuel Quintana Trujillo'" <fquintana(at)itccanarias(dot)org> |
Cc: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | RE: Bajo rendimiento en postgresql cuando se lanza un delete |
Date: | 2009-08-03 14:22:22 |
Message-ID: | 97020BF957F540DC8EDB5ABA2C5A2813@iptel.com.ar |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
> -----Mensaje original-----
> De: Francisco Manuel Quintana Trujillo
>
> Hola,
>
> Ante todo agradecer la colaboración que me han prestado en el foro.
>
> Por fin, la consulta,
> "delete from observation
> where observation_id in (select observation_id from
> observation EXCEPT select observation_id from quality)",
> terminó no sin antes demorarse 25 horas.
>
> Tareas por hacer:
> - Vacumm.
> - Crear las reglas eliminadas.
> - Crear la constraint en la tabla quality sobre el campo
> observation_id(clave ajena que referencia a la tabla observation).
> - Crear un índice en la tabla quality sobre el campo observation_id.
> - Seguir insertando datos (todo en este estricto orden porque
> los datos no están validados ya se sabe claves duplicadas,
> etc... quizás las reglas no las genere ya que puedo
> realizarlo al final).
>
> - Pasar todo al servidor.
> - Optimizar la base de datos en el servidor.
>
> Saludos, Oliver
>
Oliver, no dejes de probar cambiar work_mem antes de ejecutar el delete:
set work_mem = 1GB;
EXPLAIN DELETE FROM observation
WHERE observation_id NOT IN
(SELECT observation_id FROM quality);
Dedicando 1GB para sorts tu consulta original debiera ser mucho más rápida.
Saludos,
Fernando.
From | Date | Subject | |
---|---|---|---|
Next Message | Javier Barcena | 2009-08-03 15:38:54 | error PG LOWER |
Previous Message | Francisco Manuel Quintana Trujillo | 2009-08-03 07:14:59 | RE: Bajo rendimiento en postgresql cuando se lanza un delete |