sys.dm_exec_distributed_requests (Transact-SQL)

S’applique à : SQL Server 2016 (13.x) et versions ultérieures

Contient des informations sur toutes les requêtes actuellement ou récemment actives dans les requêtes PolyBase. Il répertorie une ligne par requête/requête.

En fonction de la session et de l’ID de requête, un utilisateur peut ensuite récupérer les requêtes distribuées réelles générées pour être exécutées via sys.dm_exec_distributed_requests. Par exemple, une requête impliquant des tables SQL standard et SQL externes est décomposée en différentes instructions/requêtes exécutées sur les différents nœuds de calcul. Pour suivre les étapes distribuées sur tous les nœuds de calcul, nous introduisons un ID d’exécution « global » qui peut être utilisé pour suivre toutes les opérations sur les nœuds de calcul associés à une requête et un opérateur particuliers, respectivement.

Nom de la colonne Type de données Description Plage
sql_handle varbinary(64) Clé pour cette vue. ID numérique unique associé à la requête. Unique dans toutes les requêtes du système.
execution_id nvarchar(32) ID numérique unique associé à la session dans laquelle cette requête a été exécutée.
statut nvarchar(32) État actuel de la demande. 'Pending', 'Authorizationing', 'AcquireSystemResources', 'Initializing', 'Plan', 'Parsing', 'AcquireResources', 'Running', 'Cancelling', 'Complete', 'Failed', 'Cancelled'.
error_id nvarchar(36) ID unique de l’erreur associée à la requête, le cas échéant. Défini sur NULL si aucune erreur n’a eu lieu.
start_time datetime Heure à laquelle l’exécution de la requête a été démarrée. 0 pour les demandes mises en file d’attente ; sinon, datetime valide plus petite ou égale à l’heure actuelle.
end_time datetime Heure à laquelle le moteur a terminé la compilation de la requête. NULL pour les demandes en file d’attente ou actives ; sinon, une datetime valide plus petite ou égale à l’heure actuelle.
total_elapsed_time int Temps écoulé dans l’exécution depuis le démarrage de la requête, en millisecondes. Entre 0 et la différence entre start_time et end_time. Si total_elapsed_time dépasse la valeur maximale d’un entier, total_elapsed_time continue d’être la valeur maximale. Cette condition génère l’avertissement « La valeur maximale a été dépassée ». La valeur maximale en millisecondes équivaut à 24,8 jours.

Voir aussi

Résolution des problèmes polyBase avec des vues de gestion dynamique
Fonctions et vues de gestion dynamique (Transact-SQL)
Vues de gestion dynamique liées aux bases de données (Transact-SQL)