Partilhar via


sys.dm_exec_distributed_requests (Transact-SQL)

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores

Contém informações sobre todas as solicitações atualmente ou recentemente ativas em consultas PolyBase. Ele lista uma linha por solicitação/consulta.

Com base na sessão e no ID da solicitação, um usuário pode recuperar as solicitações distribuídas reais geradas para serem executadas - por meio sys.dm_exec_distributed_requests. Por exemplo, uma consulta envolvendo SQL regular e tabelas SQL externas será decomposta em várias instruções/solicitações executadas nos vários nós de computação. Para rastrear as etapas distribuídas em todos os nós de computação, introduzimos um ID de execução 'global' que pode ser usado para rastrear todas as operações nos nós de computação associados a uma solicitação e operador específicos, respectivamente.

Nome da Coluna Tipo de Dados Descrição Intervalo
sql_handle varbinary(64) Chave para esta visualização. ID numérico exclusivo associado à solicitação. Exclusivo em todas as solicitações no sistema.
execution_id nvarchar(32 ID numérica exclusiva associada à sessão na qual essa consulta foi executada.
status nvarchar(32 Status atual da solicitação. 'Pendente', 'Autorizando', 'AcquireSystemResources', 'Inicializando', 'Plano', 'Análise', 'AcquireResources', 'Em execução', 'Cancelando', 'Concluído', 'Falha', 'Cancelado'.
error_id nvarchar(36) ID exclusivo do erro associado à solicitação, se houver. Defina como NULL se nenhum erro ocorreu.
start_time datetime Hora em que a execução da solicitação foi iniciada. 0 para solicitações enfileiradas; caso contrário, datetime válido menor ou igual à hora atual.
end_time datetime Hora em que o mecanismo concluiu a compilação da solicitação. NULL para solicitações enfileiradas ou ativas; caso contrário, uma data e hora válida menor ou igual à hora atual.
total_elapsed_time int Tempo decorrido na execução desde que a solicitação foi iniciada, em milissegundos. Entre 0 e a diferença entre start_time e end_time. Se total_elapsed_time exceder o valor máximo de um número inteiro, total_elapsed_time continuará a ser o valor máximo. Essa condição gerará o aviso "O valor máximo foi excedido". O valor máximo em milissegundos é equivalente a 24,8 dias.

Confira também

Solução de problemas do PolyBase com exibições de gerenciamento dinâmico
Exibições e funções de gerenciamento dinâmico (Transact-SQL)
Exibições de gerenciamento dinâmico relacionadas a bancos de dados (Transact-SQL)