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


sys.dm_external_script_execution_stats

Область применения: SQL Server 2016 (13.x) и более поздних версий Управляемый экземпляр SQL Azure

Возвращает по одной строке для каждого типа запроса внешнего скрипта. Запросы внешних скриптов группируются по поддерживаемому языку внешних скриптов. Одна строка создается для каждой зарегистрированной функции внешнего скрипта. Произвольные функции внешнего скрипта не записываются, если не отправляется родительским процессом, например rxExec.

Примечание.

Это динамическое представление управления (DMV) доступно только в том случае, если вы установили и включили функцию, поддерживающую выполнение внешних скриптов. Дополнительные сведения см. в статьях R Services в SQL Server 2016, Машинное обучение Services (R, Python) в SQL Server 2017 и более поздних версиях и службах Управляемый экземпляр SQL Azure Машинное обучение.

Имя столбца Тип данных Description
language nvarchar Имя зарегистрированного языка внешних скриптов. Каждый внешний скрипт должен указывать язык в запросе скрипта, чтобы открыть соответствующее средство запуска.
counter_name nvarchar Имя зарегистрированной функции внешних скриптов. Не допускает значение NULL.
counter_value integer Общее количество экземпляров, где вызывалась зарегистрированная функция внешних скриптов на сервере. Это значение является накопительным, начиная с момента установки компонента в экземпляре и не может быть сброшено.

Разрешения

Для SQL Server 2019 (15.x) и предыдущих версий требуется разрешение VIEW SERVER STATE на сервере.

Для SQL Server 2022 (16.x) и более поздних версий требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.

Пользователи, выполняющие внешние скрипты, должны иметь дополнительное разрешение EXECUTE ANY EXTERNAL SCRIPT. Однако это динамическое административное представление может использоваться администраторами без этого разрешения.

Замечания

Эта функция динамического административного представления предоставляется для внутренней телеметрии для мониторинга общего использования новых функций выполнения внешних скриптов, предоставляемых в SQL Server. Служба телеметрии запускается вместе с LaunchPad и увеличивает значение счетчика на диске при каждом вызове зарегистрированной функции внешнего скрипта.

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

Таким образом, счетчики, отслеживаемые этим динамическим административным представлением, выполняются, а состояние sys.dm_external_script_requests для сохранения сохраняется с помощью операций записи на диск, даже если экземпляр завершает работу.

Значения счетчиков

В SQL Server 2016 (13.x) поддерживается только внешний язык R, а запросы внешних скриптов обрабатываются службами R (в базе данных). В SQL Server 2017 (14.x) и более поздних версиях, а также в Управляемый экземпляр SQL Azure поддерживаются внешние языки R и Python, а запросы внешних скриптов обрабатываются службами Машинное обучение.

Для R это динамическое административное представление отслеживает количество вызовов R, выполненных на экземпляре. Например, если rxLinMod вызывается и выполняется параллельно, счетчик увеличивается на 1.

Для языка R значения счетчиков отображаются в поле counter_name , представляя имена зарегистрированных функций ScaleR. Значения в поле counter_value представляют совокупное количество экземпляров для определенной функции ScaleR.

Для Python это динамическое административное представление отслеживает количество вызовов Python, выполненных на экземпляре.

Число начинается, когда компонент установлен и включен в экземпляре, и является накопительным, пока файл, поддерживающий состояние, не будет удален или перезаписан администратором. Поэтому, как правило, нельзя сбрасывать значения в counter_value. Если вы хотите отслеживать использование по сеансу, времени календаря или другим интервалам, рекомендуется перехватывать счетчики с занесением в таблицу.

Регистрация функций внешнего скрипта в R

R поддерживает произвольные скрипты, и сообщество R предоставляет тысячи пакетов, каждый из которых имеет собственные функции и методы. Однако этот динамический административный административный контроль отслеживает только функции ScaleR, установленные со службами R SQL Server 2016 (13.x).

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

Примеры

Просмотр количества скриптов R, выполняемых на сервере

Следующий пример показывает совокупное число выполнений внешних скриптов для языка R.

SELECT counter_name, counter_value
FROM sys.dm_external_script_execution_stats
WHERE language = 'R';

Просмотр количества скриптов Python, выполняемых на сервере

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

SELECT counter_name, counter_value
FROM sys.dm_external_script_execution_stats
WHERE language = 'Python';

См. также