Magno Lima escreveu:
>
> 1. a primeira é muito atualizada, mas os dados são sempre apagados
> (delete from) após consumidos. Com isto ela possui um tamanho
> normalmente pequeno - estranhei isto pois pensei que o vacuum do PG irá
> comportar-se tal qual numa tabelas de muitos updates.
Não, ele se comporta de forma diferente pois consegue identificar a
tabela que precisa ou não de vacuum de acordo com as estatísticas de
atualização de cada tabela. Vale a pena ler [1].
[1] http://pgdocptbr.sourceforge.net/pg82/runtime-config-autovacuum.html
> 2. a segunda é igualmente muito atualizada, entretanto não sobre
> deletes, apenas updates e poucos inserts, uma média de 1 por dia ou
> menos, no muito uns 4 ou 5 por semana, as vezes passa meses sem um
> insert sequer. Como o PG nao substitui, pelo seu esquema, mas insere
> novos registros eu preciso do vacuum diário para não perder a performance.
O autovacuum da versão 8.2 já é bastante optimizado e não degrada tanto
a performance. Claro que tudo depende do tamanho de sua base de dados.
> Pelo que li dos comentários aqui uma das soluções seria usar com maior
> frequencia o sistema de vacuum ou ir para o Fillfactor, o qual não
> conheco, não sou especialista em banco de dados. Indo pela segunda
> linha, há uma forma de prever os melhores parametros para isto ou a
> pergunta não se aplica?
É difícil prever os parametros sem entender da tabela, tamanho, tipo de
registros e frequencia de atualização de cada página de dados. Mas no
geral é o seguinte, se você deixar 10% do espaço para o fillfactor, o
postgresql no momento de atualizar um registro que esteja em uma página
de dados, vai verificar se ainda existe espaço disponível nesta mesma
página, em existindo ele simplesmente regrava o registro na na mesma
página de origem evitando o aumento exagerado de sua tabela.
> A minha versão é 8.2 e roda num servidor Linux. Vale mesmo a pena correr
> para a 8.3? Suas impressões também poderão me ajudar muito.
Esta é uma pergunta que você precisa responder analisando tudo o que
tem de novo na versão 8.3, que tal começar em [2] e onde existir dúvidas
você postar para o grupo??
[2] http://www.postgresql.org/docs/8.3/static/release-8-3.html
Abraço,
--
Shander Lyrio
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral