sys.dm_exec_background_job_queue_stats (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Retourne une ligne qui fournit des statistiques agrégées pour chaque travail du processeur de requêtes soumis pour une exécution asynchrone (en arrière-plan).
Remarque
Pour l’appeler à partir d’Azure Synapse Analytics ou d’Analytics Platform System (PDW), utilisez le nom sys.dm_pdw_nodes_exec_background_job_queue_stats. Cette syntaxe n’est pas prise en charge par le pool SQL serverless dans Azure Synapse Analytics.
Nom de la colonne | Type de données | Description |
---|---|---|
queue_max_len | int | Longueur maximale de la file d'attente. |
enqueued_count | int | Nombre de demandes placées dans la file d'attente. |
started_count | int | Nombre de demandes dont l'exécution a commencé. |
ended_count | int | Nombre de demandes dont l'exécution s'est terminée sur un succès ou un échec. |
failed_lock_count | int | Nombre de demandes ayant échoué à cause d'un problème de contention de verrouillage ou de blocage. |
failed_other_count | int | Nombre de demandes ayant échoué pour d'autres raisons. |
failed_giveup_count | int | Nombre de demandes ayant échoué parce que le nombre limite de tentatives était atteint. |
enqueue_failed_full_count | int | Nombre de tentatives d'empilement ayant échoué parce que la file d'attente était saturée. |
enqueue_failed_duplicate_count | int | Nombre de tentatives d'empilement en double. |
elapsed_avg_ms | int | Temps moyen écoulé par demande en millisecondes. |
elapsed_max_ms | int | Temps écoulé pour la demande la plus longue, en millisecondes. |
pdw_node_id | int | S’applique à : Azure Synapse Analytics, Analytics Platform System (PDW) Identificateur du nœud sur lequel cette distribution est activée. |
Notes
Seules les informations pour les travaux de mise à jour des statistiques asynchrone apparaissent dans cette vue. Pour plus d’informations sur les statistiques de mise à jour asynchrone, consultez Statistiques.
autorisations
Sur SQL Server et SQL Managed Instance, l’autorisation VIEW SERVER STATE
est requise.
Sur les objectifs de service SQL Database Basic, S0 et S1, et pour les bases de données dans des pools élastiques, le compte d’administrateur du serveur, le compte d’administrateur Microsoft Entra ou l’appartenance au ##MS_ServerStateReader##
rôle serveur est requis. Sur tous les autres objectifs de service SQL Database, l’autorisation VIEW DATABASE STATE
sur la base de données ou l’appartenance au rôle serveur ##MS_ServerStateReader##
est requise.
Autorisations pour SQL Server 2022 (et versions plus récentes)
Nécessite l’autorisation VIEW SERVER PERFORMANCE STATE sur le serveur.
Exemples
R. Détermination du pourcentage des travaux d'arrière-plan ayant échoué
L'exemple suivant retourne le pourcentage de travaux d'arrière-plan ayant échoué pour toutes les requêtes exécutées.
SELECT
CASE ended_count WHEN 0
THEN 'No jobs ended'
ELSE CAST((failed_lock_count + failed_giveup_count + failed_other_count) / CAST(ended_count AS float) * 100 AS varchar(20))
END AS [Percent Failed]
FROM sys.dm_exec_background_job_queue_stats;
GO
B. Détermination du pourcentage des tentatives d'empilement ayant échoué
L'exemple suivant retourne le pourcentage des tentatives d'empilement ayant échoué pour toutes les requêtes exécutées.
SELECT
CASE enqueued_count WHEN 0
THEN 'No jobs posted'
ELSE CAST((enqueue_failed_full_count + enqueue_failed_duplicate_count) / CAST(enqueued_count + enqueue_failed_full_count + enqueue_failed_duplicate_count AS float) * 100 AS varchar(20))
END AS [Percent Enqueue Failed]
FROM sys.dm_exec_background_job_queue_stats;
GO
Voir aussi
Fonctions et vues de gestion dynamique (Transact-SQL)
Fonctions et vues de gestion dynamique relatives à l'exécution (Transact-SQL)