On 27-01-2017 14:51, Danilo Silva wrote:
> ​OK, achei no histórico [1] um tópico onde fala que podemos nos basear
> pela view pg_stat_all_tables (coluna n_dead_tup) para verificar a
> eficiência do autovacuum, mas em relação a coluna n_dead_tup, qual
> número seria relevante, fazer valer a pena, para executarmos​ um VACUUM
> FULL? Pergunto isso pois estou com problemas de espaço em disco, então
> estamos tentando tirar cada Mb de onde der pra tirar, mas não queremos
> comprometer a eficiência do banco.
> 
A cada disparo do autovacuum, n_dead_tup é reiniciado. Não dá para
confiar nele se o autovacuum estiver ativado. VF é péssimo para
ambientes com restrição de espaço (a não ser que sua versão seja < 9.0),
como disse o Fabrizio, o postgres pode utilizar até o dobro de espaço
dos datafiles da tabela e índices.

Para detectar o inchaço real, use o pgstattuple (em um horário com baixa
atividade pois ele pode ler *todos* os blocos da relação). Ele vai te
dar o valor exato do inchaço na tabela ou índice. A partir da 9.5 existe
uma versão aproximada para tabelas que é mais rápida por não ler todos
os blocos; use-a, se possível.


-- 
   Euler Taveira                   Timbira - http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a