Desfragmentação de Índices

Processo de eliminação de “espaços vazios” resultantes:

  • Page Splits (1 page FULL 100% -> 2 pages ~50%).

  • Remoções de tuplos.

Regularmente devemos:

  1. Verificar estado de fragmentação do índice - “SQL Server sys.dm_db_index_physical_stats reports the fragmentation details and the density for a given table or index”.

  2. Reconstruir o índice caso este esteja muito fragmentado

ALTER INDEX IndexName ON TableName REORGANIZE

  • desfragmenta (ao nível das folhas) de acordo com o fill factor do índice;

  • efectuado num conjunto de pequenas transações sem impacto nas operações de insert, update e delete.

ou

ALTER INDEX ALL ON Frag REBUILD WITH (FILLFACTOR = 98)

  • reconstrói o índice completamente (equivalente a um DROP + CREATE);

  • podemos alterar as características do índice. Por exemplo, o fillfactor.

Exemplo

Last updated