Compartilhar via


sys.dm_external_script_requests

Aplica-se a: SQL Server 2016 (13.x) e posterior Instância Gerenciada de SQL do Azure

Retorna uma linha para cada conta de trabalho ativa que executa um script externo.

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 Serviços de Machine Learning (R, Python) no SQL Server 2017 e posterior, Serviços do R no SQL Server 2016 e Serviços de Machine Learning na Instância Gerenciada de SQL do Azure.

Nome da coluna Tipo de dados Descrição
external_script_request_id identificador exclusivo ID do processo que enviou a solicitação de script externo. Isso corresponde à ID do processo conforme recebeu a instância SQL.
linguagem nvarchar Palavra-chave que representa uma linguagem de script com suporte.
degree_of_parallelism int Número que indica o número de processos paralelos que foram criados. Esse valor pode ser diferente do número de processos paralelos solicitados.
external_user_name nvarchar A conta de trabalho do Windows na qual o script foi executado.

Permissões

Requer VIEW SERVER STATE permissão no servidor.

Observação

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

Permissões do SQL Server 2022 e posteriores

É necessária a permissão VIEW SERVER PERFORMANCE STATE no servidor.

Comentários

Esta exibição pode ser filtrada usando o identificador de linguagem de script.

A exibição também retorna a conta de trabalho na qual o script está sendo executado. Para obter informações sobre contas de trabalho usadas pelos scripts externos, consulte a seção Identidades usadas no processamento (SQLRUserGroup) em Visão geral de segurança para a estrutura de extensibilidade nos Serviços de Machine Learning do SQL Server.

O GUID retornado no campo external_script_request_id também representa o nome do arquivo do diretório seguro no qual os arquivos temporários são armazenados. Cada conta de trabalho, como MSSQLSERVER01, representa um único logon do SQL ou usuário do Windows e pode ser usada para executar várias solicitações de script. Por padrão, esses arquivos temporários são removidos após a conclusão do script solicitado.

Essa DMV monitora apenas os processos ativos e não pode relatar scripts que já foram concluídos. Se você precisar controlar a duração de scripts, recomendamos que você adicione informações de tempo no script e capture-o como parte da execução do script.

Exemplos

Visualizando os scripts ativos no momento para um processo específico

O exemplo a seguir exibe o número de execuções de script externo executadas na instância atual.

SELECT external_script_request_id
  , [language]
  , degree_of_parallelism
  , external_user_name
FROM sys.dm_external_script_requests;

Resultados

external_script_request_id linguagem degree_of_parallelism external_user_name
183EE6FC-7399-4318-AA2E-7A6C68E435A8 R 1 MSSQLSERVER01

Confira também