NSQuantumPerformance (Transact-SQL)

Gibt Informationen zu den Ausführungszeiten von Anwendungsquanten zurück. Im Resultset werden Quanten nach der Dauer ihrer Ausführungszeit gruppiert, wobei die Anzahl von Quanten in verschiedenen Ausführungszeitbereichen angezeigt wird. Dies kann bei der Problembehandlung von Quanten mit langer Ausführungszeit behilflich sein.

Syntax

[ application_schema_name . ] NSQuantumPerformance 
    [ [ @ReportingInterval = ] interval ]
    [, [ @SinceQuantumInitialized = ] since_init ]

Argumente

[ @ReportingInterval = ] interval

Bezeichnet die Zeitspanne (in Sekunden) eines Ausführungszeitbereichs im Resultset. Der Bericht enthält eine Zeile pro Zeitbereich.

interval ist ein Wert vom Datentyp int; der Standardwert ist 5, was für fünf Sekunden pro Zeitbereich steht.

[ @SinceQuantumInitialized = ] since_init

Gibt an, ob der Bericht Quanten vor dem letzten Zurücksetzen der Quantumuhr mithilfe der gespeicherten Prozeduren NSSetQuantumClock oder NSSetQuantumClockDate einschließt. since_init ist ein Wert vom Datentyp tinyint und kann entweder 0 oder 1 sein. Der Standardwert ist 1, wobei nur Quantumperioden nach dem letzten Zurücksetzen eingeschlossen sind. 0 schließt Quantumperioden vor dem letzten Zurücksetzen ein.

Rückgabecodewerte

Keine

Resultsets

Spaltenname Datentyp Beschreibung

MinimumExecutionTime

int

Quantumausführungszeit in Sekunden für die untere Grenze des Ausführungszeitbereichs.

MaximumExecutionTime

int

Quantumausführungszeit in Sekunden für die obere Grenze des Ausführungszeitbereichs.

CountOfQuantums

int

Anzahl von Quanten, deren Ausführungszeit größer als oder gleich dem Minimum Execution Time-Wert der Zeile, jedoch kleiner als der Maximum Execution Time-Wert der Zeile ist.

QuantumDuration

nvarchar(255)

Gibt an, ob der Zeitbereich für diese Berichtzeile Zeiten einschließt, die die in der Anwendungsdefinitionsdatei (ADF, Application Definition File) definierte Quantumdauer überschreiten. Wenn die Quantumausführung länger dauert als die Quantumdauer, gerät der Generator in Rückstand. Mögliche Werte sind Under, Over und Maybe over.

ChronicleQuantumLimit

nvarchar(255)

Gibt an, ob der Zeitbereich für diese Berichtzeile Zeiten einschließt, die das Ergebnis von ChronicleQuantumLimit * QuantumDuration (gemäß Definition in der ADF) überschreiten. Wenn die Quantumausführung diese Zeit überschreitet, werden möglicherweise Verlaufsregelausführungen ausgelassen. Mögliche Werte sind Under, Over und Maybe over.

SubscriptionQuantum Limit

nvarchar(255)

Gibt an, ob der Zeitbereich für diese Berichtzeile Zeiten einschließt, die das Ergebnis von SubscriptionQuantumLimit * QuantumDuration (gemäß Definition in der ADF) überschreiten. Wenn die Quantumausführung diese Zeit überschreitet, werden möglicherweise Abonnementregelausführungen ausgelassen. Mögliche Werte sind Under, Over und Maybeover.

Hinweise

Microsoft SQL Server Notification Services erstellt die gespeicherte Prozedur NSQuantumPerformance in der Anwendungsdatenbank, wenn Sie die Instanz erstellen. Wenn Sie die Anwendung aktualisieren, kompiliert Notification Services die gespeicherte Prozedur erneut.

Diese gespeicherte Prozedur ist Bestandteil des Anwendungsschemas, das durch das SchemaName-Element der Anwendungsdefinitionsdatei angegeben wird. Wenn kein Schemaname bereitgestellt wird, ist dbo das Standardschema.

Die Werte QuantumDuration, ChronicleQuantumLimit und SubscriptionQuantumLimit geben an, ob die Dauer von Quanten im Berichtintervall über oder unter der für die Anwendung erwarteten Zeit lag. Die Werte in diesen Spalten geben Folgendes an:

  • Over gibt an, dass der MinimumExecutionTime-Wert über der Quantumgrenze liegt; alle in der Zeile gemeldeten Quanten haben die Quantumgrenze überschritten.
  • Under gibt an, dass der MaximumExecutionTime-Wert unter der Quantumgrenze liegt; alle in der Zeile gemeldeten Quanten haben die Quantumgrenze unterschritten.
  • Maybe over gibt an, dass der MinimumExecutionTime-Wert kleiner als oder gleich der Quantumgrenze ist und dass der MaximumExecutionTime-Wert größer als oder gleich der Quantumgrenze ist; die Ausführung einiger Quanten hat möglicherweise den MaximumExecutionTime-Wert überschritten.

Berechtigungen

Die Ausführungsberechtigungen erhalten standardmäßig Mitglieder der NSAnalysis-Datenbankrolle, der festen Datenbankrolle db_owner und der festen Serverrolle sysadmin.

Beispiele

A. Verwenden von Standardwerten

Im folgenden Beispiel wird das Erstellen des Quantumleistungsberichts mithilfe eines Berichtintervalls von fünf Sekunden mithilfe des Standardwertes für @SinceQuantumInitialized veranschaulicht. Dies schließt nur die Quanten ein, die nach der letzten Initialisierung der Quantumuhr verarbeitet wurden.

Für die Anwendung werden die SchemaName-Standardeinstellungen verwendet, worunter alle Anwendungsobjekte im dbo-Schema angeordnet werden.

EXEC dbo.NSQuantumPerformance;

B. Verwenden aller Quanten und Angeben des Berichtintervalls

Im folgenden Beispiel wird das Erstellen des Quantumleistungsberichts mithilfe eines Berichtintervalls von 60 Sekunden veranschaulicht, wobei die Quantenverarbeitung vor der letzten Initialisierung der Quantumuhr eingeschlossen ist.

In diesem Beispiel befindet sich die gespeicherte Prozedur (wie alle anderen Anwendungsobjekte) im Stock-Schema gemäß Definition im SchemaName-Element der ADF.

EXEC Stock.NSQuantumPerformance
    @ReportingInterval = 60,
    @SinceQuantumInitialized = 1;

Siehe auch

Verweis

Gespeicherte Prozeduren in Notification Services (Transact-SQL)

Andere Ressourcen

Notification Services-Leistungsberichte
SchemaName Element (ADF)

Hilfe und Informationen

Informationsquellen für SQL Server 2005