sys.dm_external_script_requests

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores 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) só estará disponível 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, R Services no SQL Server 2016 e Serviços de Machine Learning em 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 recebido da instância do 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

VIEW SERVER STATE Requer permissão no servidor.

Observação

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

Permissões para SQL Server 2022 e posteriores

Requer 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 no SQL Server Serviços de Machine Learning.

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 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

Exibindo 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