Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Перестроение индексов SQL - когда?

Автор вопроса: 0xB33FОтветов: 4

Когда следует перестраивать индексы? Ночью? Еженедельно? Почасовая?

  • Только что найдено: stackoverflow.com/questions/1331236/ 0xB33F 18.05.2010

tsqlindexing

Ответы

Ответ 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.

Похожие материалы