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

Responder a