Подтвердить что ты не робот

Что делает exec sp_updatestats?

Что такое sp_updatestats? Могу ли я запустить это в рабочей среде для повышения производительности?

4b9b3361

Ответ 1

sp_updatestats обновляет всю статистику для всех таблиц в базе данных, где даже одна строка изменилась. Он делает это с использованием образца по умолчанию, то есть он не сканирует все строки в таблице, поэтому он, вероятно, будет производить менее точную статистику, чем альтернативы.

Если у вас есть план обслуживания с включенными индексами перестроения, он также обновит статистику, но более точную, поскольку он сканирует все строки. Нет необходимости перестраивать статистику после восстановления индексов.

Ручное обновление определенного объекта статистики или таблицы с помощью команды update statistics дает вам гораздо лучший контроль над процессом. Чтобы автоматизировать его, посмотрите здесь.

Автоматическое обновление срабатывает только тогда, когда оптимизатор решает, что это необходимо. В 2012 году произошли изменения в математике: в 2012 году автоматическое обновление было уволено за каждые 500 + 20% изменения в строках таблицы; в 2012+ это SQRT (1000 * Таблица строк). Это означает, что он чаще встречается на больших столах. Временные таблицы ведут себя по-разному, конечно.

В заключение, sp_updatestats может нанести больше урона, чем пользы, и является наименее рекомендуемым вариантом.