Freigeben über


SQL Server, SQL-Statistikobjekt

Das SQLServer:SQL Statistics-Objekt in SQL Server stellt Leistungsindikatoren zum Überwachen der Kompilierung und des Typs von Anforderungen bereit, die an eine Instanz von SQL Server gesendet werden. Die Überwachung der Anzahl von Abfragekompilierung und Neukompilierung sowie die Anzahl Batches, die eine SQL Server-Instanz empfängt, gibt Ihnen einen Hinweis darauf, wie schnell SQL Server Benutzerabfragen verarbeitet und wie effektiv der Abfrageoptimierer die Abfragen verarbeitet.

Die Kompilierung ist ein wesentlicher Bestandteil der Bearbeitungszeit einer Abfrage. Um die Kompilierungskosten zu sparen, speichert das Datenbankmodul den kompilierten Abfrageplan in einem Abfragecache. Das Ziel des Caches besteht darin, die Kompilierung zu reduzieren, indem kompilierte Abfragen zur späteren Wiederverwendung gespeichert werden, wodurch die Anforderung zum erneuten Kompilieren von Abfragen bei späterer Ausführung beendet wird. Jede eindeutige Abfrage muss jedoch mindestens einmal kompiliert werden. Abfrageumkompilierungen können durch die folgenden Faktoren verursacht werden:

  • Schemaänderungen, einschließlich Basisschemaänderungen wie das Hinzufügen von Spalten oder Indizes zu einer Tabelle, oder Statistische Schemaänderungen, z. B. das Einfügen oder Löschen einer erheblichen Anzahl von Zeilen aus einer Tabelle.

  • Änderungen an der Umgebung (SET-Anweisung). Änderungen an Sitzungseinstellungen wie ANSI_PADDING oder ANSI_NULLS können dazu führen, dass eine Abfrage neu kompiliert wird.

Weitere Informationen zur einfachen und erzwungenen Parametrisierung finden Sie unter ALTER DATABASE (Transact-SQL).

Dies sind die SQL Server SQL-Statistikzähler .

SQL Server SQL Statistikzähler BESCHREIBUNG
Auto-Param-Versuche/Sekunde Anzahl der Automatisch-Parameterisierungsversuche pro Sekunde. Gesamt sollte die Summe der fehlgeschlagenen, sicheren und unsicheren automatischen Parametrisierungen sein. Die automatische Parameterisierung tritt auf, wenn eine Instanz von SQL Server versucht, eine Transact-SQL Anforderung zu parametrisieren, indem einige Literale durch Parameter ersetzt werden, sodass die Wiederverwendung des resultierenden zwischengespeicherten Ausführungsplans für mehrere ähnliche Anforderungen möglich ist. Beachten Sie, dass automatische Parameterisierungen auch als einfache Parametrisierungen in neueren Versionen von SQL Server bezeichnet werden. Dieser Zähler umfasst keine erzwungenen Parametrisierungen.
Batch-Anfragen/Sekunde Anzahl der empfangenen Transact-SQL-Befehlsbatches pro Sekunde. Diese Statistik ist von allen Einschränkungen betroffen (z. B. E/A, Anzahl der Benutzer, Cachegröße, Komplexität von Anforderungen usw.). Hohe Batchanforderungen bedeuten einen guten Durchsatz.
Gescheiterte Auto-Parameter/Sekunde Anzahl der fehlgeschlagenen Automatisch-Parameterisierungsversuche pro Sekunde. Das sollte klein sein. Beachten Sie, dass automatische Parameterisierungen auch in späteren Versionen von SQL Server als einfache Parameter bezeichnet werden.
Erzwungene Parameterisierungen/Sek. Anzahl der erfolgreichen erzwungenen Parametrisierungen pro Sekunde.
Geführte Planausführungen/Sekunden Anzahl der Planausführungen pro Sekunde, in denen der Abfrageplan mithilfe eines Planleitfadens generiert wurde.
Fehlgeleitete Planausführungen/Sek. Anzahl der Planausführungen pro Sekunde, bei denen ein Planleitfaden während der Plangenerierung nicht berücksichtigt werden konnte. Der Planleitfaden wurde ignoriert, und die normale Kompilierung wurde verwendet, um den ausgeführten Plan zu generieren.
Sichere automatische Parameter/Sek. Anzahl der sicheren automatischen Parametrierungsversuche pro Sekunde. Safe bezieht sich auf eine Bestimmung, dass ein zwischengespeicherter Ausführungsplan zwischen verschiedenen ähnlich aussehenden Transact-SQL Anweisungen gemeinsam genutzt werden kann. SQL Server führt viele Autoparameterisierungsversuche durch, die sich als sicher herausstellen und andere fehlschlagen. Beachten Sie, dass automatische Parameterisierungen auch in späteren Versionen von SQL Server als einfache Parameter bezeichnet werden. Dies schließt keine erzwungenen Parameterisierungen ein.
SQL-Aufmerksamkeitsrate Anzahl der Aufmerksamkeiten pro Sekunde. Eine Aufmerksamkeit ist eine Anforderung des Clients, die aktuell ausgeführte Anforderung zu beenden.
SQL-Kompilierungen pro Sekunde Anzahl der SQL-Kompilierungen pro Sekunde. Gibt an, wie oft der Kompilierungscodepfad eingegeben wird. Enthält Kompilierungen, die durch Neukompilierungen auf Anweisungsebene in SQL Server verursacht werden. Nachdem die SQL Server-Benutzeraktivität stabil ist, erreicht dieser Wert einen stabilen Zustand.
SQL-Neukompilierungen/Sek. Anzahl der Neukompilierungen der Anweisung pro Sekunde. Zählt die Anzahl der Auslösungen von Neukompilierungen der Anweisung. Im Allgemeinen sollen die Neukompilierungen niedrig sein.
Unsichere Auto-Parameter/Sek. Anzahl der unsicheren automatischen Parameterisierungsversuche pro Sekunde. Die Abfrage weist beispielsweise einige Merkmale auf, die verhindern, dass der zwischengespeicherte Plan freigegeben wird. Diese sind als unsicher gekennzeichnet. Dies zählt nicht die Anzahl der erzwungenen Parametrisierungen.

Siehe auch

SQL Server, Plan Cache-Objekt
Überwachen der Ressourcenverwendung (Systemmonitor)