Поделиться через


SQL Server, объект статистики SQL

Объект SQLServer:SQL Statistics в SQL Server предоставляет счетчики для отслеживания компиляции и типа запросов, отправленных экземпляру SQL Server. Мониторинг количества компиляций и повторных компиляций, а также количества пакетов, полученных экземпляром SQL Server, позволяет определить скорость обработки запросов пользователей в SQL Server и эффективность обработки запросов оптимизатором запросов.

Компиляция является значительной частью времени выполнения запроса. Чтобы сэкономить затраты на компиляцию, ядро СУБД сохраняет скомпилированный план запроса в кэше запросов. Цель кэша заключается в сокращении компиляции путем хранения скомпилированных запросов для последующего повторного использования, следовательно, заканчивая требование повторной компиляции запросов при последующем выполнении. Однако каждый уникальный запрос должен быть скомпилирован по крайней мере один раз. Перекомпиляции запросов могут быть вызваны следующими факторами:

  • Изменения схемы, включая изменения базовой схемы, такие как добавление столбцов или индексов в таблицу, или изменения схемы статистики, такие как вставка или удаление значительного количества строк из таблицы.

  • Изменения среды (инструкции SET). Изменения в параметрах сеанса, таких как ANSI_PADDING или ANSI_NULLS, могут привести к повторной компиляции запроса.

Дополнительные сведения об простой и принудительной параметризации см. в разделе ALTER DATABASE (Transact-SQL).

Это счетчики статистики SQL Server.

Счетчики статистики SQL Server Описание
Автоматическое выполнение попыток param/с Число попыток автоматической параметризации в секунду. Общее значение должно быть суммой неудачных, безопасных и небезопасных автоматических параметризации. Автоматическое параметризация возникает, когда экземпляр SQL Server пытается параметризировать запрос Transact-SQL, заменив некоторые литералы параметрами, чтобы повторно использовать полученный кэшированный план выполнения в нескольких похожих запросах. Обратите внимание, что автоматическая параметризация также называется простой параметризацией в более новых версиях SQL Server. Этот счетчик не включает принудительные параметризации.
Пакетные запросы/сек Количество пакетов команд Transact-SQL, полученных в секунду. Эта статистика зависит от всех ограничений (таких как операции ввода-вывода, количество пользователей, размер кэша, сложность запросов и т. д.). Высокая частота пакетных запросов обеспечивает хорошую пропускную способность.
Сбой авто-параметров в секунду Количество неудачных попыток автоматической параметризации в секунду. Это должно быть небольшим. Обратите внимание, что автоматические параметризации также называются простыми параметризациями в более поздних версиях SQL Server.
Принудительные параметризации в секунду Число успешных принудительных параметризаций в секунду.
Выполнение управляемого плана в секунду Количество выполнений плана в секунду, в которых план запроса был создан с помощью руководства по плану.
Неправильное выполнение плана в секунду Количество выполнений плана в секунду, при которых план-гайд не удалось соблюсти при генерации плана. Руководство по плану игнорируется, и для создания выполненного плана используется обычная компиляция.
Безопасные автопараметры/сек Число безопасных попыток автоматической параметризации в секунду. Безопасность относится к определению возможности совместного использования кэшированного плана выполнения между различными похожими Transact-SQL выражениями. SQL Server выполняет многие попытки автоматической параметризации, некоторые из которых оказываются безопасными, а другие — неудачными. Обратите внимание, что автоматические параметризации также называются простыми параметризациями в более поздних версиях SQL Server. Это не включает принудительные параметризации.
Уровень внимания SQL Количество внимания за секунду. Вниманием является запрос клиента, чтобы завершить текущий выполняемый запрос.
Компиляции SQL в секунду Количество компиляций SQL в секунду. Указывает время ввода пути к коду компиляции. Включает компиляцию, вызванную перекомпиляциями на уровне инструкций в SQL Server. После стабильной активности пользователя SQL Server это значение достигает устойчивого состояния.
Повторные компиляции SQL в секунду Число перекомпиляций выражений в секунду. Подсчитывает количество запусков повторной компиляции инструкции. Как правило, нужно стремиться к минимальному количеству рекомпиляций.
Небезопасные автоматические параметры в секунду Число небезопасных попыток автоматической параметризации в секунду. Например, запрос имеет некоторые характеристики, которые препятствуют совместному доступу кэшированного плана. Они обозначены как небезопасные. Это не учитывает количество обязательных параметризаций.

См. также

SQL Server, объект кэша планов
Наблюдение за использованием ресурсов (системный монитор)