Luego del vacuum, reindexdb
El día 17 de octubre de 2008 10:10, postgres Emanuel CALVO FRANCO <[EMAIL PROTECTED]> escribió: > Podrias compartir la parte del codigo afectada? > > El día 17 de octubre de 2008 10:08, postgres Emanuel CALVO FRANCO > <[EMAIL PROTECTED]> escribió: >> Lo que podes hacer es ejecutar la consulta por partes (con limits) y >> ahacer cursores para cada consulta. >> Es mas laborioso pero ocuparias menos memoria. >> >> >> >> El día 17 de octubre de 2008 9:27, Silvio Quadri <[EMAIL PROTECTED]> >> escribió: >>> >>> >>> El 17 de octubre de 2008 4:32, Rafael Comino Mateos <[EMAIL PROTECTED]> >>> 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 >>> >>> >>> >>> >> > -- TIP 2: puedes desuscribirte de todas las listas simultáneamente (envía "unregister TuDirecciónDeCorreo" a [EMAIL PROTECTED])