Estou trabalhando em um projeto que requer uma redução de banco de dados. Após o encolhimento, verifiquei sys.dm_db_index_physical_stats
e posso ver que muitos dos meus índices estão mais de 99% fragmentados ( avg_fragmentation_in_percent
).
Em resposta a isso, IndexOptimize
executei por Ola Hallengren, com o seguinte código:
EXECUTE [dbo].[IndexOptimize]
@Databases = 'Dynamic.Migrate',
@FragmentationLow = 'INDEX_REORGANIZE',
@FragmentationMedium = 'INDEX_REBUILD_OFFLINE',
@FragmentationHigh = 'INDEX_REBUILD_OFFLINE',
@FillFactor = '80',
@UpdateStatistics = 'ALL',
@StatisticsSample = '100',
@LogToTable = 'Y'
Isso foi concluído com sucesso, mas quando eu verifico sys.dm_db_index_physical_stats
novamente, os avg_fragmentation_in_percent
valores não foram alterados e afirmo que meus índices ainda estão fragmentados em mais de 99%.
Estou faltando alguma coisa aqui?
Isso é da documentação do SQL Server Index and Statistics Maintenance de Ola Hallengren :
Portanto, os índices que você mencionou ainda estão fragmentados após a execução
IndexOptimize
provavelmente foram ignorados por terem menos páginas do que o mínimo de 1.000 páginas, pois você não alterou esse valor em seu código.