Dicas para um DBA Iniciante – Analisando fragmentação de índices

Galera,

Hoje quero passar mais uma dica para quem administra um ambiente de banco de dados SQL Server.

Uma das grandes preocupações para um DBA relacionada à performance é a taxa de fragmentação dos índices existentes em tabelas ou views.

Quanto maior a fragmentação, mais custosas são as operações de leitura e escrita nos objetos de banco de dados, e consequentemente ocorre uma brusca queda de performance em seu ambiente.

Para auxiliar nesta tarefa utilizo uma consulta que retorna todos os índices de uma determinada tabela e sua respectiva tava de fragmentação, possibilitando assim que o DBA possa iniciar um procedimento de rebuild ou reorganize destes índices.

Caso tenha interesse, basta utilizar a consulta abaixo:

SELECT 
    a.index_id, 
    name, 
    avg_fragmentation_in_percent
FROM 
    sys.dm_db_index_physical_stats (DB_ID(),
    OBJECT_ID(<nome_objeto>), NULL, NULL, NULL) AS a
JOIN 
    sys.indexes AS b ON a.object_id = b.object_id 
AND 
    a.index_id = b.index_id;

 

Quero aproveitar e deixar uma pergunta para vocês referente à índices.

Quando devemos executar uma operação de rebuild e quando devemos executar uma operação de reorganize?

Espero que tenham gostado e não deixem de inscrever-se no blog, no canal do youtube e no grupo de discussão SQLManiacs.

Grande abraço.

7 ideias sobre “Dicas para um DBA Iniciante – Analisando fragmentação de índices

  1. Wilson Paes

    Fala Vitão, seu blog está ótimo, cheio de informações e dicas super uteis.

    Respondendo a pergunta:

    Rebuild devemos usar quando a fragmentação é superior a 30% já o reorganize quando a fragmentação não chegar aos 30%.

    Resposta
  2. Fernando akira Tajima

    index_id name avg_fragmentation_in_percent
    1 PK_Pasta 89,4042891183479

    89.404 é muito alto?

    Resposta
  3. Rodrigo S

    Rebuild fazer a reconstrução da B-Tree completa (nó raiz até as folhas), demorando mais a reconstrução do índice e reorganize faz a reorganização somente dos das folhas da B-Tree, correto?

    Resposta

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.