Esse artigo faz parte da revista Clube Delphi Edição 85. Clique aqui para ler todos os artigos desta edição

de grande aceitação, principalmente pela comunidade Delphi. Grande parte desse sucesso deve-se a sua facilidade de uso e de configuração. Entretanto, apesar de ser bastante simples, o Firebird exige alguns cuidados por parte dos desenvolvedores, do contrário corre-se o risco de que seu desempenho seja reduzido significativamente.

Este artigo mostrará 10 dicas que tendem a garantir um bom desempenho ao banco de dados. Algumas são baseadas em textos que foram publicadas por outros autores (logo as fontes estão citadas, nos devidos lugares), outras surgiram da necessidade de resolver problemas encontrados pelo autor em consultorias realizadas em empresas de todo o país.

 

1. Backup e Restore

É provável que não exista uma dica melhor e mais simples sobre Firebird do que essa: sempre que possível faça um backup e restore. Essas operações trazem uma série de benefícios, os principais são:

·         As páginas de dados e índices são alocadas de forma contínua e aquelas que não são usadas são eliminadas;

·         A árvore de índices é reconstruída e a seletividade dos índices recalculada;

·         Registros eliminados (através do DELETE) são excluídos fisicamente (Garbage Collection).

Uma dica: caso o principal uso do banco de dados seja a leitura e não a inserção ou atualização de dados, pode-se usar o parâmetro USE_ALL_SPACE ao restaurar o backup.

Devido à forma como o Firebird trabalha com as versões de um mesmo registro, utiliza um modelo chamado Versioning, as páginas de dados do banco armazenam múltiplas versões dos registros nelas contidos. Quando um BD é restaurado, o banco reserva um espaço de aproximadamente 20% da página para armazenar as novas versões dos registros casos os mesmos sejam alterados. Se o banco de dados será lido e não atualizado (ou pouco atualizado), não há necessidade de que esse espaço seja reservado (KARWIN, 1998). O comando completo é mostrado a seguir:

 

GBAK -c -use_all_space -user sysdba -pas masterkey <arquivo_backup.fbk> <novo_banco.fdb>

 

2. Análise das estatísticas do cabeçalho do banco

As estatísticas do cabeçalho do banco de dados fornecem uma série de informações importantes para avaliar a real situação do servidor. Elas podem ser obtidas através do utilitário de linha de comando GSTAT, presente na pasta bin do Firebird.

O GSTAT retorna uma série de informações sobre o banco solicitado, essas informações dependem dos parâmetros passados. O comando “gstat –help” apresenta as opções disponíveis, as principais delas estão na Tabela 1.

 

Parâmetro

Função

-a

Analisa os dados e as páginas de índice

-d

Analisa as páginas de dados

-h

Analisa a página de cabeçalho (header page)

-i

Analisa as “folhas” das páginas de índices (leaf pages)

-l

Analisa a página de log

-u

Nome do usuário para conectar no banco

-p

Senha para conexão

-r

Analisa os registros de versões

-t

Especifica o nome da tabela a ser analisada (para o caso de ser uma única tabela)

Tabela 1. ...

Quer ler esse conteúdo completo? Tenha acesso completo