Delen via


sys.dm_exec_background_job_queue_stats (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform Systeem (PDW)SQL-database in Microsoft Fabric

Geeft een rij terug die aggregatiestatistieken levert voor elke queryprocessorjob die wordt ingediend voor asynchrone (achtergrond) uitvoering.

Opmerking

Om dit aan te roepen vanuit Azure Synapse Analytics of Analytics Platform System (PDW), gebruik de naam sys.dm_pdw_nodes_exec_background_job_queue_stats. Deze syntaxis wordt niet ondersteund door een serverloze SQL-pool in Azure Synapse Analytics.

Kolomnaam Gegevenstype Description
queue_max_len int Maximale lengte van de wachtrij.
enqueued_count int Aantal verzoeken dat succesvol in de wachtrij is gezet.
started_count int Aantal verzoeken dat is gestart met uitvoering.
ended_count int Aantal verzoeken die succesvol of mislukt zijn verwerkt.
failed_lock_count int Aantal verzoeken die mislukten door lock-contention of deadlock.
failed_other_count int Aantal verzoeken die om andere redenen zijn mislukt.
failed_giveup_count int Aantal verzoeken dat mislukte omdat de limiet voor herkansen was bereikt.
enqueue_failed_full_count int Aantal mislukte inzetpogingen omdat de wachtrij vol is.
enqueue_failed_duplicate_count int Aantal pogingen tot dubbele wachtrij.
elapsed_avg_ms int Gemiddelde verstreken tijd van verzoek in milliseconden.
elapsed_max_ms int Verstreken tijd van het langste verzoek in milliseconden.
pdw_node_id int van toepassing op: Azure Synapse Analytics, Analytics Platform System (PDW)

De id voor het knooppunt waarop deze distributie zich bevindt.

Opmerkingen

Deze weergave geeft alleen informatie terug voor asynchrone update-statistiektaken. Voor meer informatie over asynchrone update-statistieken, zie Statistieken.

Permissions

Voor SQL Server en SQL Managed Instance is een machtiging vereist VIEW SERVER STATE .

Voor servicedoelstellingen van SQL Database Basic, S0 en S1 en voor databases in elastische pools is het serverbeheerdersaccount , het Microsoft Entra-beheerdersaccount of het lidmaatschap van de ##MS_ServerStateReader##serverrol vereist. Voor alle andere SQL Database-servicedoelstellingen is de VIEW DATABASE STATE machtiging voor de database of het lidmaatschap van de ##MS_ServerStateReader## serverfunctie vereist.

Machtigingen voor SQL Server 2022 en hoger

Vereist de machtiging PRESTATIESTATUS VAN DE WEERGAVESERVER op de server.

Voorbeelden

Eén. Het bepalen van het percentage mislukte achtergrondbanen

Het volgende voorbeeld geeft het percentage mislukte achtergrondtaken voor alle uitgevoerde quels terug.

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. Het percentage mislukte invalpogingen bepalen

Het volgende voorbeeld geeft het percentage mislukte invalpogingen voor alle uitgevoerde queries terug.

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  

Zie ook

dynamische beheerweergaven en -functies (Transact-SQL)
uitvoeringsgerelateerde dynamische beheerweergaven en -functies (Transact-SQL)