Kbase 51117: Como verificar fragmentação do banco de dados
Autor |
  Adriano Correa - CAT |
Acesso |
  Público |
Publicação |
  24/06/2015 |
|
Os bancos de dados atuais se utilizam de algoritmos que evitam fragmentação de dados e índices. Então é muito difícil haver fragmentação em bancos de dados Progress OpenEdge, Oracle e Microsoft SQL Server.
Para confirmar que não existe fragmentação em bancos de dados Progress OpenEdge, a Progress disponibiliza a ferramenta dbanalys para gerar um relatório de fragmentação. Para gerar o relatório, no servidor de banco de dados deve ser executado o seguinte comando, independente se o banco de dados está online ou offline:
proutil nome-do-banco -C dbanalys > relatorio.txt
Esse exemplo parte do princípio que o Progress está no path do sistema operacional e o prompt está localizado no diretório do banco. O comando gera, nesse exemplo, um relatório com o nome de relatorio.txt.
Para verificar se uma tabela está fragmentada, localize-a no relatório e verifique o valor correspondente de fragmentação na coluna Fragments Factor. Se essa coluna apontar um valor maior que 1.5 para tabelas significativas (com mais de 100 mil registros), considera-se que a tabela está fragmentada.
Para os índices, a fragmentação é apresentada na coluna %Util. Para índices significativos (com mais de 100 blocos), sugere-se que tenha pelo menos um índice na tabela com mais de 90% na coluna %Util. Se não tiver, considera-se que o índice está fragmentado.