[firebase-br] Fazendo uma 'TableAspiração'

Guilherme Machado guilherme.machado em faep.com.br
Seg Set 17 15:23:36 -03 2007


*Olá pessoal,*

Em nossa última reunião do departamento sentimos a necessidade de fazer 
uma /TableAspiração/ em nosso banco de dados Firebird. Entendam por 
/TableAspiração /o processo para redução de objetos sem uso na base de 
dados.

Não temos um DBA responsável pela manutenção do banco, portanto, cada um 
de nós assume a responsabilidade de se criar e apagar /tables, 
procedures, triggers, domains, generators,/ etc. conforme a necessidade.

Isso é bom pois isso compartilha o conhecimento entre todos os 
envolvidos no desenvolvimento e manutenção dos sistemas, por outro lado, 
faz com que um número excessivo de objetos sejam criados com objetivos 
de atender tarefas eventuais (como por exemplo desenvolvimento 
relatórios que serão utilizados uma única vez). Quando nos atentamos a 
isso normalmente apagamos essas /tabelas/procedures/ temporárias mas 
muitas vezes essa tarefa de limpeza acaba no esquecimento.

Para terem uma pequena visão de nosso banco, de 5.1 GB, segue abaixo 
alguns detalhes dos objetos mais numerosos:

- Número de tabelas: 360
- Número de procedures: 443
- Número de Triggers: 211

Para fazermos a /TableAspiração/ devemos identificar quais objetos foram 
criados temporariamente para alguma tarefa eventual e quais objetos 
estão relacionados a sistemas antigos que não estão mais em uso. Todos 
esses objetos tem em comum um baixo número de acessos além de terem sido 
acessados pela última vez há muito tempo (talvez 2 anos ou +).

Então pergunto se existe alguma estatística do Firebird que nos traga 
detalhadamente o acesso aos objetos do  banco de dados. Se não existir 
que acham de sugerirmos isso aos desenvolvedores do Firebird?


Grande abraço e muito obrigado,
Guilherme Machado
Curitiba / PR




Mais detalhes sobre a lista de discussão lista