<[EMAIL PROTECTED]>> Bom dia a todos,
>
> Gostaria de saber se um "Vacuum Full" já realiza
> automaticamente um
> "analyze"?
>
> Sem mais,
>
> ----------------------
> Marlon David de Souza
> Desenvolvimento
> Sysmo Informática Ltda

Caro Marlon,

O VACUUM [1] e o ANALYZE [2] são comandos independentes, um realiza uma "faxina" na base de dados eliminando tuplas velhas e outro realiza uma atualização das estatisticas a respeito do conteúdo das tabelas, armazenando na tabela pg_statistic.

O que acontece, e as vezes confunde mesmo, é que o VACUUM tem a opção chamada ANALYZE incorporada, mas o que o postgresql faz é chamar o ANALYZE após o VACCUM, quando executamos VACUUM ANALYZE...

Depois de toda essa "conversa fiada", a resposta é NÃO, o VACUUM FULL não faz o ANALYZE, para ele fazer deves executar o VACUUM FULL ANALYZE.

É bom lembrar q deves utilizar o VACUUM FULL com cautela pois este faz bloqueio exclusivo de tabelas pois tenta compactar ao máximo uma tabela para usar o mínimo de blocos de disco, inclusive na própria documentação oficial eles recomendam executar VACUUM ANALYZE com frequencia e não recomendam o uso do FULL rotineiramente.

[1] http://www.postgresql.org/docs/8.1/interactive/sql-vacuum.html
<[EMAIL PROTECTED]>[2] http://www.postgresql.org/docs/8.1/interactive/sql-analyze.html

Cordialmente,


--
Fabrízio de Royes Mello
ViSul Tecnologia

_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br

Responder a