У нас была очень медленная база данных (MS SQL SERVER). Теперь мы выяснили, что индексы никогда не перестраивались и не реорганизовывались. (На данный момент неясно, действительно ли это было проблемой, но сейчас мы хотим делать это часто.)
Но теперь вопрос: что лучше - перестроить индекс или лучше его реорганизовать? На данный момент у нас была фрагментация более 90%, поэтому я сделал перестройку. Но если я хочу делать это часто, фрагментация обычно будет ниже. Так что было бы разумнее реорганизовать его вместо того, чтобы перестраивать? И действительно ли вы действительно часто выполняете эту задачу на каждом сервере MS SQL без исключения? Имеет ли смысл на всех MS SQL-серверах?
И есть ли рекомендации, как часто должна выполняться эта задача? раз в неделю? раз в месяц?
Я также видел в блогах, что они делают также "статистику обновления" после перестройки / реорганизации. Это рекомендуется или чушь? (Я нашел оба в блогах. -> один сказал: да, сделай это -> другой: чушь!)
А какой у вас опыт? Эти задачи (восстановление / реорганизация / статистика) требуют большой производительности?
Много вопросов! Сожалею!
Есть объемы и объемы информации, которые отвечают на эти вопросы. Ответ: это зависит от обстоятельств. Совершенно очевидно, что регулярное обслуживание индекса и обновление статистики имеют решающее значение. Тем не менее, вы должны провести некоторое исследование и адаптировать, как и когда это делать, в зависимости от вашей среды.
Для начала прочтите это:
Что сказал Сквиллман, но вы также можете подумать об использовании чего-то вроде Скрипты Олы Халленгрен, которые выполняют столько работы, сколько необходимо. Вы можете настроить степень фрагментации индекса перед его перестроением или реорганизацией, и это сократит объем работы, связанной с переиндексированием.
Но да. Это зависит от вашей среды, от типа нагрузки (в основном выбор, в основном вставка / обновление / удаление) и т. Д.