Когда следует перестраивать индексы? Ночью? Еженедельно? Почасовая?
Вопрос
Перестроение индексов SQL - когда?
- Только что найдено: stackoverflow.com/questions/1331236/ 0xB33F 18.05.2010
Ответы
Ответ 1 · рейтинг 6 · SQLMenace
Это зависит от уровней фрагментации, а не от временных рамок в целом, см. Сценарий автоматической дефрагментации индекса от Мишель Аффорд, он проверяет уровни фрагментации и перестраивает/реорганизует только при необходимости.
Ответ 2 · рейтинг 3 · gbn
Запускайте интеллектуальный скрипт (из SQL Fool) каждую ночь скажем, и он решит ничего не делать, дефрагментировать или пересобрать.
По сути, сделайте минимум, соответствующий вашим уровням фрагментации.
Лично я запускал его каждую ночь, как правило. Я бы восстанавливал статистику каждую ночь, по крайней мере.
Ответ 3 · рейтинг 1 · Chirag
Это зависит от степени фрагментации индексов.
Если значение avg_fragmentation_in_percent > 5 % и ‹ = 30 %, вам следует реорганизовать индекс. Если значение avg_fragmentation_in_percent > 30%, вам следует перестроить индекс.
Ответ 4 · a1ex07
Из документации SQL Server 2005:
Выполните команду ALTER INDEX ... REORGANIZE для дефрагментации индексов, попадающих под следующие пороги фрагментации: (avg_page_space_used_in_percent ‹ 75 и >60) или (avg_fragmentation_in_percent > 10 и ‹15)
Выполните ALTER INDEX ... REBUILD, чтобы дефрагментировать индексы, попадающие под следующие пороги фрагментации: (avg_page_space_used_in_percent ‹60) или (avg_fragmentation_in_percent > 15)
Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.