From: | "Silvio Quadri" <silvioq(at)gmail(dot)com> |
---|---|
To: | "Rafael Comino Mateos" <ccomino(at)kaplan(dot)es> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Consulta Eficiente |
Date: | 2008-10-17 12:27:16 |
Message-ID: | 61dc71dc0810170527w255dc0fcgdfef10f9282054d3@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El 17 de octubre de 2008 4:32, Rafael Comino Mateos <ccomino(at)kaplan(dot)es>escribió:
> Tengo una función que al ejecutarse debe trabajar con un conjunto de
> 1.000.000 de registros aproximadamente.
>
> Sobre ese conjunto de datos, en un cursor saco una a una las filas y la
> mayoría las borro y otras pues las guardo en una tabla, o hago cálculos,
> etc.
>
> El problema que tengo es de eficiencia, ya que la transacción se hace tan
> grande que ocupa demasiada memoria y se hace lentísimo la ejecución.
>
> Que puedo hacer?
>
¿Es necesario que ejecutes todo en una transacción?
¿Es necesario también tener un cursor?
Yo he ejecutado cosas similares con plpgsql y no tuve inconvenientes ...
Después de ejecutar muchos "delete"s sobre la tabla ¿Hacés el vacuum?
Quizás ejecuciones anteriores que no efectuaron el vacuum correspondiente
estén afectando la performance.
Saludos!
Silvio
From | Date | Subject | |
---|---|---|---|
Next Message | Gilberto Castillo Martínez | 2008-10-17 12:31:35 | Re: para que sirven los esquemas?????? |
Previous Message | keyser soze | 2008-10-17 12:26:12 | existen stored procedures? |