sys.dm_exec_background_job_queue_stats (Transact-SQL)
Gibt eine Zeile zurück, die Gesamtstatistiken zu jedem Abfrageprozessorauftrag bereitstellt, der für die asynchrone Ausführung (im Hintergrund) übermittelt wird.
Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version). |
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
queue_max_len |
int |
Maximale Länge der Warteschlange. |
enqueued_count |
int |
Anzahl der erfolgreich an die Warteschlange gesendeten Anforderungen. |
started_count |
int |
Anzahl der Anforderungen, mit deren Ausführung begonnen wurde. |
ended_count |
int |
Anzahl der Anforderungen, die entweder mit Erfolg oder Fehler abgeschlossen wurden. |
failed_lock_count |
int |
Anzahl der Anforderungen, die aufgrund von Sperrkonflikten oder Deadlocks Fehler erzeugt haben. |
failed_other_count |
int |
Anzahl der Anforderungen, die aus anderen Gründen Fehler erzeugt haben. |
failed_giveup_count |
int |
Anzahl der Anforderungen, die Fehler erzeugt haben, da das Wiederholungslimit erreicht wurde. |
enqueue_failed_full_count |
int |
Anzahl der gescheiterten Versuche zum Einreihen in eine Warteschlange, da die Warteschlange voll ist. |
enqueue_failed_duplicate_count |
int |
Anzahl der doppelten Versuche zum Einreihen in eine Warteschlange. |
elapsed_avg_ms |
int |
Durchschnittliche Dauer von Anforderungen in Millisekunden. |
elapsed_max_ms |
int |
Dauer der längsten Anforderung in Millisekunden. |
Hinweise
Diese Sicht gibt nur Informationen für Aufträge zum asynchronen Aktualisieren von Statistiken zurück. Weitere Informationen zum asynchronen Aktualisieren von Statistiken finden Sie unter Statistik.
Berechtigungen
Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.
Beispiele
A.Bestimmen des Prozentsatzes von Hintergrundaufträgen mit Fehlern
Im folgenden Beispiel wird der Prozentsatz der fehlgeschlagenen Hintergrundaufträge für alle ausgeführten Abfragen zurückgegeben.
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.Bestimmen des Prozentsatzes fehlerhafter Versuche, Elemente in die Warteschlange einzureihen
Im folgenden Beispiel wird der Prozentsatz der fehlgeschlagenen Versuche zum Einreihen in eine Warteschlange für alle ausgeführten Abfragen zurückgegeben.
SELECT
CASE enqueued_count WHEN 0
THEN 'No jobs posted'
ELSE CAST((enqueue_failed_full_count + enqueue_failed_duplicate_count) / CAST(enqueued_count AS float) * 100 AS varchar(20))
END AS [Percent Enqueue Failed]
FROM sys.dm_exec_background_job_queue_stats;
GO
Siehe auch
Verweis
Dynamische Verwaltungssichten und Funktionen (Transact-SQL)
Dynamische Verwaltungssichten und -funktionen im Zusammenhang mit der Ausführung (Transact-SQL)