--------------------------------------------------
From: "Alvaro Herrera" <[EMAIL PROTECTED]>
Sent: Friday, October 17, 2008 4:46 PM
To: "Rafael Comino Mateos" <[EMAIL PROTECTED]>
Cc: <pgsql-es-ayuda@postgresql.org>
Subject: Re: [pgsql-es-ayuda] Consulta Eficiente

Rafael Comino Mateos 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.


Hasta donde puedas evita el uso de cursores, sobre todo si son MUCHOS registros sobre los que se debe iterar, lo que puedas hacer vía SQLs te agilizará mucho el tema ... muestranos tu función a ver si se puede hacer este tipo de "conversiones".

Recuerda que por lo general funciona mucho más rápido las sentencias SQL que iterar por cada registro (Set oriented vs row oriented).

Atentamente,

RAUL DUQUE
Bogotá, Colombia

Creo que has diagnosticado mal el problema.  Por favor muestra la
función.

--
Alvaro Herrera http://www.amazon.com/gp/registry/3BP7BYG9PUGI8
"But static content is just dynamic content that isn't moving!"
               http://smylers.hates-software.com/2007/08/15/fe244d0c.html
--
TIP 4: No hagas 'kill -9' a postmaster

__________ Information from ESET Smart Security, version of virus signature database 3533 (20081017) __________

The message was checked by ESET Smart Security.

http://www.eset.com


--
TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
              http://archives.postgresql.org/pgsql-es-ayuda

Responder a