sys.dm_external_script_execution_stats

Aplica-se a: simSQL Server 2016 (13.x) e SimInstância Gerenciada do Azure SQL mais recente

Retorna uma linha para cada tipo de solicitação de script externo. As solicitações de script externo são agrupadas pela linguagem de script externo com suporte. Uma linha é gerada para cada função de script externo registrada. Funções de script externo arbitrárias não são registradas, exceto se forem enviadas por um processo pai, como rxExec.

Observação

Essa DMV (exibição de gerenciamento dinâmico) estará disponível somente se você tiver instalado e habilitado o recurso que dá suporte à execução de script externo. para obter mais informações, consulte r services in SQL Server 2016, Machine Learning services (R, Python) no SQL Server 2017 e posterior e no Azure Instância Gerenciada Machine Learning Services.

Nome da coluna Tipo de dados Descrição
Linguagem nvarchar Nome da linguagem de script externo registrada. Cada script externo deve especificar a linguagem na solicitação de script para iniciar o inicializador associado.
counter_name nvarchar Nome de uma função de script externo registrada. Não permite valor nulo.
counter_value inteiro Número total de instâncias nas quais a função de script externo registrada foi chamada no servidor. Esse valor é cumulativo, começando com a hora em que o recurso foi instalado na instância, e não pode ser redefinido.

Permissões

Requer a permissão VIEW SERVER STATE no servidor.

Observação

Os usuários que executam scripts externos devem ter a permissão adicional EXECUTE ANY EXTERNAL SCRIPT; no entanto, essa DMV pode ser usada por administradores sem essa permissão.

Comentários

Essa DMV é fornecida para telemetria interna, a fim de monitorar o uso geral do novo recurso de execução de script externo no SQL Server. O serviço de telemetria é iniciado quando o LaunchPad é iniciado e incrementa um contador baseado em disco sempre que uma função de script externo registrada é chamada.

Em geral, os contadores de desempenho são válidos somente enquanto o processo que os gerou está ativo. Portanto, uma consulta em uma DMV não pode mostrar dados detalhados de serviços que foram interrompidos. Por exemplo, se um iniciador executar um script externo e, ainda assim, for concluído muito rapidamente, uma DMV convencional poderá não mostrar nenhum dado.

Portanto, os contadores acompanhados por esta DMV são mantidos em execução, e o estado de sys.dm_external_script_requests é preservado usando gravações em disco, mesmo se a instância é desligada.

Valores do contador

no SQL Server 2016, o único idioma externo com suporte é R e as solicitações de script externo são tratadas pelo R Services (no Banco de Dados) . no SQL Server 2017 e posterior e no Azure SQL Instância Gerenciada, R e Python têm suporte para idiomas externos e as solicitações de script externo são tratadas pelo Serviços de Machine Learning .

Para o R, essa DMV acompanha o número de chamadas de R feitas em uma instância. Por exemplo, se rxLinMod for chamado e executado em paralelo, o contador será incrementado em 1.

Na linguagem R, os valores de contador exibidos no campo counter_name representam os nomes das funções ScaleR registradas. Os valores do campo counter_value representam o número cumulativo de instâncias da função ScaleR específica.

Para Python, essa DMV acompanha o número de chamadas do Python feitas em uma instância.

A contagem é iniciada quando o recurso é instalado e habilitado na instância e é cumulativa até que o arquivo que mantém o estado seja excluído ou substituído por um administrador. Portanto, em geral, não é possível redefinir os valores de counter_value. Se você desejar monitorar o uso por sessão, horários do calendário ou outros intervalos, recomendamos que você capture as contagens em uma tabela.

Registro de funções de script externo em R

O r oferece suporte a scripts arbitrários, e a Comunidade R fornece muitos milhares de pacotes, cada um com suas próprias funções e métodos. no entanto, essa DMV monitora apenas as funções scaler instaladas com SQL Server R Services 2016.

O registro dessas funções é executado quando o recurso é instalado, e as funções registradas não podem ser adicionadas nem excluídas.

Exemplos

Exibindo o número de scripts do R executados no servidor

O exemplo a seguir exibe o número cumulativo de execuções de script externo da linguagem R.

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

Exibindo o número de scripts do Python executados no servidor

O exemplo a seguir exibe o número cumulativo de execuções de script externo para a linguagem Python.

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

Confira também