RE: Autovacuum en una sola db con multiples esquemas.

From: Lazaro Rubén García Martinez <lgarciam(at)vnz(dot)uci(dot)cu>
To: Espartano <espartano(dot)mail(at)gmail(dot)com>, Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Autovacuum en una sola db con multiples esquemas.
Date: 2011-11-30 13:55:31
Message-ID: 294D3D02D5E18D42827B2ECFEADEB688214DEE0FF4@mx-interno.vnz.uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

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-owner(at)postgresql(dot)org [mailto:pgsql-es-ayuda-owner(at)postgresql(dot)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(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Siguenza 2011-11-30 16:14:37 Consulta con procedimiento
Previous Message Alvaro Herrera 2011-11-30 13:52:04 Re: Autovacuum en una sola db con multiples esquemas.