SQL Server, объект SQL Statistics

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

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

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

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

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

Ниже приведены счетчики SQL ServerСтатистика SQL.

Счетчики SQL Server статистика SQL

Описание

Попыток автопараметризации/с

Число попыток автоматической параметризации, выполненных за секунду. Общий итог должен быть равен сумме ошибочных, надежных и ненадежных автоматических параметризаций. Автоматическая параметризация возникает в том случае, когда экземпляр 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 это повторные компиляции уровня инструкции, а не уровня пакета, как в Microsoft SQL Server 2000. Поэтому просто сравнивать значения этого счетчика для SQL Server и предыдущих версий нельзя.

Небезопасных автопараметризаций/с

Число ненадежных попыток автоматической параметризации, выполненных за секунду. Например: если запрос обладает какими-либо характеристиками, препятствующими совместному использованию его плана из кэша, он определяется как ненадежный. В это число не входят принудительные параметризации.