[firebase-br] Ainda sobre SWEEP (Firebird) e VACUUM (PostgreSQL)
André Medeiros
andre em solucaoinf.srv.br
Qua Out 4 08:29:56 -03 2006
Ok...
----- Original Message -----
From: "Carlos H. Cantu (TeamFB)" <listas em warmboot.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, October 03, 2006 5:36 PM
Subject: Re: [firebase-br] Ainda sobre SWEEP (Firebird) e VACUUM
(PostgreSQL)
Ok, eu deveria ter especificado que o lock soh acontece no VACCUM
FULL.
[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br
WC> Olá a todos.
WC> Muito bacana essa discussão sobre VACUUM e SWEEP. E muito bacana a
WC> explicação do Eduardo Jedliczka sobre páginas. Interessantíssimo.
WC> Não quero criar flames - atualmente sou usuário do PostgreSQL e acho o
WC> Firebird também interessante.
WC> Porém o Cantu levantou alguns pontos que gostaria de falar sobre:
WC> "No entanto, o PostgreSQL é bem mais complexo de se configurar e dar
WC> manutenção, não existe nem um décimo das ferramentas e componentes de
WC> acesso que o Firebird tem, e o processo de limpeza do banco (chamado
WC> por eles de VACCUUM) exige conexão exclusiva com o banco.
WC> Tire suas próprias conclusões."
WC> Bom: O VACUUM NÃO exige conexão exclusiva com o banco. O VACUUM puro usa
um
WC> lock chamado ShareUpdateExclusiveLock (quem quiser curiar o fonte do
WC> PostgreSQL, está em lock.h). Do manual:
WC> "O VACUUM simples (sem o FULL) simplemente reclama espaço e o torna
WC> disponível para reutilização. Essa forma de comando pode operar em
paralelo
WC> com a leitura e escrita na tabela, já que um lock exclusivo não é
obtido. O
WC> VACUUM FULL faz um processamento mais extensivo, incluindo mover tuplas
nos
WC> blocos para tentar compactar a tabela ao número mínimo necessário de
blocos
WC> no disco. Essa forma é mais lenta e requer um lock exclusivo em cada
tabela
WC> enquanto está sendo processado"
WC> Ora, o VACUUM pode ser usado concorrentemente com INSERTS, UPDATES e
WC> DELETES, sem problema.
WC> O VACUUM FULL faz o que o Firebid só faz com um backup do banco -
encolher o
WC> tamanho do banco. Nesse caso, um lock exclusivo e necessário - outras
WC> transações deverão esperar.
WC> No mais, eu, que uso Linux, tenho encontrado pouquissimas ferramentas
para
WC> Firebird no Linux. Tem o Flamerobin, mais ainda é meio instável (e eu
não
WC> sei C nem tenho tempo suficiente pra contribuir). No mais, há drivers
ODBC,
WC> JDBC, conexão com python, php e o que mais precisar no PostgreSQL.
WC> A dificuldade de administração tem sido mitigada. Hoje, já existe o
WC> auto-vacuum, embora ele venha desabilitado por padrão. E a dificuldade
de
WC> configuração está diminuindo. A partir da versão 8.2, será possível
WC> configurar valores em MB ou KB, por exemplo.Isso e muito mais :). Sua
WC> aparente complexidade na configuração é decorrente de sua flexibilidade.
WC> Não me entendam mal - reitero: não quero causar flame-wars. Uso o
WC> PostgreSQL, acho o Firebird um banco bacana (inclusive comprei o livro
do
WC> Cantu. Na época fiquei um mês desejando-o, e fiquei bem satisfeito com o
WC> conteúdo!). Porém é chato quando informações incorretas são divulgadas.
WC> (Me copiem no cc.. Estou em modo digest, só vou ler os e-mails de vocês
sei
WC> lá quando..)
WC> []'s
WC> - Walter
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista