Você NÃO precisa de CPUAffinity, nBackup, shadow e multifile databases

Neste momento no site www.firebirdnews.org existe uma pesquisa sobre quais funcionalidades do Firebird você usa em ambientes de produção.
Algumas respostas são indícios de perigo, principalmente para os que rodam grandes bases de dados Firebird.



Bem, mas o que há de errado com estas respostas?
1. CPUAffinity. CPUAffinity pode ser usada para que o processo do Firebird SuperServer rode somente em CPU/núcleo (core) especificos. Hoje em dia temos múltiplos núcleos mesmo em estações de trabalho convencionais, então não há razão para usar a arquitetura SuperServer e limita-lo a uma única CPU - use as arquiteturas SuperClassic ou Classic e deixe o Firebird rodar com potência máxima. 


2.  NBackup. Nós da IBSurgeon não recomendamos que nossos clientes usem o NBackup sem um monitoramento externo e como a única forma de back-up. NBackup faz uma cópia física do banco de dados no nível das páginas de dados  - é rápido, mas, ao contrário do gbak, não há nenhuma verificação do conteúdo das páginas. Se você usa apenas o NBackup e não executa as rotinas de manutenção do banco de dados (pelo menos sweep's regulares combinados com monitoramento dos contadores de transação), e algum dia sua base de dados seja corrompida (devido a problemas de memória RAM ou um desligamento anormal por exemplo) , NBackup continuará a fazer e sobre-escrever "backups".  Um outro perigo são arquivos de delta "congelados", quando uma base de dados não é desbloqueada (unlocked) corretamente, e todas as mudanças são escritas para o arquivo de delta, e não possa ser feito o "merge" devido a um problema no arquivo de delta.  Pra usar os benefícios oferecidos pelo NBackup e evitar seus perigos, nós definimos esquemas especiais de back-up para nossos clientes.


3. Shadow é completamente inútil em ambientes de produção modernos. Ele oferece proteção para apenas um tipo de corrupção - uma falha ocasional crítica do HD (assumindo que o shadow está configurado corretamente em dois HD's separados).  ao invés do Shadow, use RAID5 (ou RAID10)  - será muito mais rápido e mais conveniente para manutenção.

4. Multifile database. Atualmente não há razão para ter bancos usando múltiplos arquivos. Usando-se múltiplos arquivos é impossível usar o NBackup, as bases de dados ficam presas aos locais físicos definidos, e não existe vantagem alguma. É comum que bases de dados com arquivos múltiplos sejam usadas para que se possa copiar os arquivos diretamente para DVD's, mas você precisa parar o serviço do Firebird durante esta operação.

Resumo
Claro que este post é uma provocação, e algumas vezes o administrador precisa usar CPUAffinity, NBackup e outras funcionalidades (menos shadow !), para que possa alcançar algum objetivo específico, mas isto precisa ser feito corretamente e com total conhecimento e entendimento dos passos que precisam ser dados. NBackup é a ferramenta mais útil, e geralmente subestimada, tanto em termos de recursos quanto possíveis problemas que pode ocasionar.

Maiores informações:
"Firebird's Big Database" presentation at slideshare:

No comments:

Post a Comment