> -----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.

--
TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo 
agradecerán

Responder a