Хитрые флаги статистики mssql


#1

Хотел бы всем еще раз напомнить о трёх флагах

  • AUTO_UPDATE_STATISTICS - эта вообще-то настройка MSSQL которая даёт ему команду обновлять поисковую информацию для индексов автоматически, а также (что самое главное) ее создавать. Дело в том, что иногда в рамках тонкого тюнинга вам может захотеться создать “свою статистику” - так вот лучше этого не делать

  • AUTO_UPDATE_STATS_ASYNC - собственно здесь всё просто: операция обновления статистики пусть и быстрая, но блокирующая по умолчанию. Такое поведение можно отключить.

  • ADOPTiVE_STATS_UPDATE - а это самый интересный флаг. Включив его вы отдаете MSSQL управление “порогом” деградации, который для каждого объекта будет рассчитываться отдельно, и соответственно - события автообновления статистики будут срабатывать для каждого объекта по разному

Выбор какие флаги включать, а какие нет - тема отдельная. Но если вам будет нужно - начинать советую с определения OLTP или OLAP у вас нагрузка. То есть определитесь, хотите ли вы обеспечить быструю вставку или быстрый поиск.


#2

Да действительно - однозначный выбор зависит от множества факторов

Здесь на текущий момент я бы хотел поделиться еще двумя ссылками

То что мы начали обсуждать на форуме 1С++ несколько лет назад
и
Блог PFE инженеров

Если рассматривать всю информацию в комплексе - можно построить свой план обслуживания, даже без выделенного DBA


#3

Самый серьезный план обслуживания не данный момент, который нам удалось найти: