Несколько ключей в базе данных SQL Server 2005, которые унаследованы, имеют очень высокий процент фрагментации. При использовании следующий SQL:Фрагментация индекса SQL Server 2005
select OBJECT_NAME(object_id), avg_fragmentation_in_percent, record_count, *
from sys.dm_db_index_physical_stats (DB_ID(N'FragmentedDB'), NULL, NULL, NULL, 'Detailed') s
Я вижу, что несколько таблиц с осколочной% между 50 и 99. В этих таблицах все они имеют более 100 000 строк, некоторые с 2,000,000+. Я считаю, что это вызывает значительные проблемы с производительностью нашего приложения, поэтому я попытался восстановить некоторые из этих показателей со следующим SQL:
ALTER INDEX ALL ON [dbo].[FragmentedTable]
REBUILD WITH (FILLFACTOR = 90, ONLINE = ON)
Однако, после того, как я перестраивать индекс и посмотреть на осколочной% снова, они все остались без изменений. Есть что-то, чего я не хватает? Я сделал некоторые поиски по этой теме, но до сих пор пустует.
Спасибо!
Я тоже получаю то же самое. Но когда я использую студию Sql Management для проверки фрагментации (используя свойства индекса), она показывает правильное значение фрагментации 0,24%. Когда я использую подобный подход, он говорит, что он на 100% фрагментирован. – Kelly
Реорганизовали ли вы индекс? –
Да, я также побежал: ALTER INDEX ALL ON [dbo]. [FragmentedTable] REORGANIZE – Blather