Динамическая статистика запросов

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

СРЕДА SQL Server Management Studio предоставляет возможность просматривать план динамического выполнения активного запроса. Этот динамический план запроса позволяет анализировать процесс выполнения запроса в режиме реального времени по мере передачи управления от одного оператора плана запроса другому. Динамический план запроса отображает общий ход выполнения запроса и текущую статистику выполнения на уровне оператора, например число полученных строк, затраченное время, ход выполнения оператора и т. д. Так как эти данные доступны в режиме реального времени и, чтобы их увидеть, не нужно дожидаться завершения запроса, такая статистика чрезвычайно полезна для отладки проблем с производительностью запросов. Эта функция доступна начиная с SQL Server 2016 (13.x) Management Studio, однако она может работать с SQL Server 2014 (12.x).

Примечание.

На внутреннем уровне динамическая статистика запросов использует динамическое административное представление sys.dm_exec_query_profiles.

Область применения: SQL Server (начиная с SQL Server 2014 (12.x)) и База данных SQL Azure.

Предупреждение

Эта функция предназначена в основном для диагностики. Использование этой функции может умеренно замедлить общую производительность запросов, особенно в SQL Server 2014 (12.x). Дополнительные сведения см. в разделе Инфраструктура профилирования запросов.
Эта функция может использоваться с отладчиком Transact-SQL.

Просмотр динамической статистики запросов для одного запроса

  1. Чтобы просмотреть план выполнения запроса в режиме реального времени, в меню "Сервис" выберите значок Включить динамическую статистику запросов.

    Live Query Stats button on toolbar

    Вы также можете просмотреть доступ к плану выполнения динамических запросов, щелкнув правой кнопкой мыши выбранный запрос в Management Studio, а затем нажмите кнопку "Включить статистику динамических запросов".

    Live Query Stats button on popup menu

  2. Теперь можно выполнить запрос. В динамическом плане запроса отображается общий ход выполнения запроса и текущая статистика выполнения (например, затраченное время, ход выполнения и т. д.) по операторам плана запроса. Сведения о ходе выполнения запроса и статистика выполнения периодически обновляются во время выполнения запроса. С помощью этих сведений вы сможете в общих чертах понимать ход выполнения запроса, а также отлаживать долго выполняемые запросы, бесконечно выполняемые запросы, запросы, которые приводят к переполнению tempdb, и проблемы с временем ожидания.

    Live Query Stats button in showplan

Просмотр динамической статистики запросов для любого запроса

Динамический план выполнения можно открыть из монитора активности. Для этого правой кнопкой мыши щелкните запросы в таблице Процессы или Текущие ресурсоемкие запросы.

Live Query Stats button in Activity Monitor

Замечания

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

Разрешения

Для заполнения страницы результатов Динамическая статистика запросов требуется разрешение SHOWPLAN уровня базы данных. Для выполнения запроса требуются все разрешения, необходимые для этого. В SQL Server требуется разрешение на уровень VIEW SERVER STATE сервера для просмотра динамической статистики.
Для База данных SQL уровня "Премиум" требуется VIEW DATABASE STATE разрешение в базе данных для просмотра динамической статистики. Для База данных SQL уровня "Стандартный" и "Базовый" требуется учетная запись администратора сервера или администратора Microsoft Entra для просмотра динамической статистики.

Примечание.

Идентификатор Microsoft Entra ранее был известен как Azure Active Directory (Azure AD).

См. также

Планы выполнения
Руководство по архитектуре обработки запросов
Наблюдение и настройка производительности
Средства контроля и настройки производительности
Открытие монитора активности (среда SQL Server Management Studio)
Монитор активности
Мониторинг производительности с использованием хранилища запросов
sys.dm_exec_query_statistics_xml
sys.dm_exec_query_profiles
Флаги трассировки
Справочник по логическим и физическим операторам Showplan
Инфраструктура профилирования запросов