Según tengo entendido la ejecución de VACUUM FULL, es agresiva y tiene un efecto muy negativo en el rendimiento de las consultas concurrentes a la base de datos, más si estás en 8.3, en mi opinión personal preferiría activar el autovacuum y no tendrías de preocuparte de realizar operaciones manuales de VACUUM y ANALYZE, en otro caso podrías aplicar VACUUM manual a la base de datos desde una tarea programada mediante el comando vacuumdb, lo recomendable es ejecutar este comando diariamente en algún horario del día donde no exista mucha carga de trabajo. La diferencia que tiene el proceso automático de vacuum (autovacumm launcher process) respecto a realizar VACUUM manual es que este se encarga de realizar ANALYZE además de VACCUM, por tal motivo, si decides realizar vacuum manualmente, también deberías realizar analyze de forma manual.
Saludos. -----Mensaje original----- De: pgsql-es-ayuda-ow...@postgresql.org [mailto:pgsql-es-ayuda-ow...@postgresql.org] En nombre de Espartano Enviado el: miércoles, 30 de noviembre de 2011 01:13 Para: Lista PostgreSQL Asunto: [pgsql-es-ayuda] Autovacuum en una sola db con multiples esquemas. Hola gente, tengo una duda con el autovacuum, tengo una base de datos que tiene varios esquemas dentro de ella, cada esquema tiene un usuario mediante el cual se conectan unas aplicaciones que hacen repetidamente update sobre una tabla, esos programas realizan periódicamente vacuum full (el nivel de updates es algo alto del orden de 10 mil a 20 mil updates sobre esa misma tabla de cada esquema diariamente) y el vacuum full lo realizan cada 15 updates !!! lo cual es creo yo bastante malo pues se debería utilizar auto-vacuum para ello pues la db es 8.3, me he dado a la tarea de comprobarle a los desarrolladores que el hecho de que su aplicación haga tantos full vacuum sobre la tabla es el motivo de que esos 10 o 20 mil updates se lleven las 24 horas del día en terminar (en mi laptop realice mas de 1 millón de inserts en menos de 20 minutos) mi pregunta es, hay algún inconveniente en dejar activados los vacuum full en todos los usuarios de la bd ( es decir en todos los esquemas) y solo desactivar el vacuum full en uno de ellos y activar también el autovacuum en esa base de datos ? Es decir en todos los esquemas - 1 estarían haciendo vacuum full y solo lo voy a desactivar en el esquema en donde quiero comprobar mi teoría a los desarrolladores, pero tendré que activar el auto-vacuum para toda la db y eso incluye los esquemas que aun seguirán haciendo vacuum full, hay algún inconveniente que debería tomar en cuanta al respecto de lo anterior? Muchas gracias por anticipado. - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda