Re: dudaas sobre autovacuum

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Miguel Angel Hernandez Moreno <miguel(dot)hdz(dot)mrn(at)gmail(dot)com>
Cc: Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: dudaas sobre autovacuum
Date: 2011-09-08 15:42:19
Message-ID: 1315494968-sup-7428@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Excerpts from Miguel Angel Hernandez Moreno's message of jue sep 08 12:06:12 -0300 2011:
> Saludos lista
>
> En mi servidor de respaldo le active el autovacuum segun la configuracion a
> mi entender y
> quiciera saber como dar mas perfomance para que no afecte en el perfomance
> un autovacuum
> Teniendo en cuenta que tengo tablas que reciben reciben millones de datos al
> dia
>
> Tabla principal1 9 millones diarios (insert) y aprox unos 600 mil
> update
> Tabla principal2 1.2 millones diarios y aprox unos 350 mil
> update
> Tabla principal3 700 mil registros diarios y aprox unos 500 mil
> update
> Tabla principal4 1.2 millones diarios y a toda la tabla se le
> hace un update para marcar los registros diarios procesados
> Tabla principal5 5500 registros, Cada registro tiene un update de casi
> todos los campos aproximandamente cada minuto

Yo diría que deberías desactivar autovacuum de la tabla principal1, y
poner un vacuum en crontab; de esta manera te aseguras que se ejecuta a
la hora que más te conviene, nunca en medio de la hora de más alta
carga. Igual con otras tablas que sean de gran volumen y que reciban
muchos updates. Así dejas autovacuum para que se haga cargo de las
tablas con más moviemiento como principal5.

A la tabla principal4 quizás te convenga hacerle un vacuum manual un
corto rato después del update masivo (suficiente tiempo como para que
todas las otras transacciones que estaban abiertas cuando empezó la
transacción del update, hayan terminado).

> autovacuum_vacuum_scale_factor = 0.002 (Esto lo puse asi por recomendacion)
> autovacuum_analyze_scale_factor = 0.001 (Esto lo puse asi por
> recomendacion)

Creo que estos valores son demasiado pequeños. Quizás 0.05 o por ahí
para autovacuum_vacuum_scale_factor.

> autovacuum_vacuum_cost_delay = 20 (no se para que se usa)

Y este puede ser demasiado alto (o quizás no) ... 10 puede ser un valor
más apropiado. Si lo pones muy alto, cada vacuum se demorará mucho.

Para saber para qué sirve cada parámetro, mira el manual. Todos están
explicados en detalle.

--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Lazaro Rubén García Martinez 2011-09-08 17:21:33 Raid 10 VS Raid 5
Previous Message Miguel Angel Hernandez Moreno 2011-09-08 15:06:12 dudaas sobre autovacuum