Freigeben über


sys.dm_db_xtp_checkpoint_stats (Transact-SQL)

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance

Gibt Statistiken zu den In-Memory OLTP-Prüfpunktvorgängen in der aktuellen Datenbank zurück. Wenn die Datenbank keine OLTP-Objekte im Arbeitsspeicher enthält, sys.dm_db_xtp_checkpoint_stats wird ein leeres Resultset zurückgegeben.

Weitere Informationen finden Sie unter In-Memory OLTP (Speicheroptimierung).

USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;

SQL Server 2014 (12.x) unterscheidet sich erheblich von neueren Versionen und wird separat behandelt.

In der folgenden Tabelle werden die Spalten in sys.dm_db_xtp_checkpoint_stats, für SQL Server 2016 (13.x) und höhere Versionen beschrieben.

Spaltenname type Beschreibung
last_lsn_processed bigint Letzte vom Controller angezeigte LSN.
end_of_log_lsn numerisch(38) Der LSN des Protokollendes.
bytes_to_end_of_log bigint Protokollieren Sie Bytes, die vom Controller unverarbeitet werden, entsprechend den Bytes zwischen last_lsn_processed und end_of_log_lsn.
log_consumption_rate bigint Rate der Transaktionsprotokollnutzung durch den Controller (in KB/s).
active_scan_time_in_ms bigint Die vom Controller aufgewendete Zeit, um das Transaktionsprotokoll aktiv zu scannen.
total_wait_time_in_ms bigint Kumulierte Wartezeit für den Controller, während das Protokoll nicht gescannt wird.
waits_for_io bigint Die Anzahl der Wartezeiten für das protokollierte E/A des Controllerthreads.
io_wait_time_in_ms bigint Kumulierte Zeit, die beim Warten auf die Protokoll-E/A durch den Controllerthread aufgewendet wurde.
waits_for_new_log_count bigint Die Anzahl der Wartezeiten, die vom Controllerthread anfallen, damit ein neues Protokoll generiert wird.
new_log_wait_time_in_ms bigint Kumulierte Zeit für das Warten auf ein neues Protokoll durch den Controllerthread.
idle_attempts_count bigint Häufigkeit, mit der der Controller in einen Leerlaufzustand wechselt.
tx_segments_dispatched bigint Anzahl der Segmente, die vom Controller gesehen und an die Serialisierer verteilt wurden. Segment ist ein zusammenhängender Teil des Protokolls, der eine Serialisierungseinheit bildet. Sie ist derzeit auf 1 MB angepasst, kann sich aber in Zukunft ändern.
segment_bytes_dispatched bigint Die Gesamtanzahl der Byte, die vom Controller an Serialisierer verteilt wurden, seit dem Neustart der Datenbank.
bytes_serialized bigint Die Gesamtzahl der Bytes, die seit dem Neustart der Datenbank serialisiert wurden.
serializer_user_time_in_ms bigint Zeitaufwand für Serialisierer im Benutzermodus.
serializer_kernel_time_in_ms bigint Zeitaufwand für Serialisierer im Kernelmodus.
xtp_log_bytes_consumed bigint Die Gesamtanzahl der seit dem Neustart der Datenbank verbrauchten Protokollbytes.
checkpoints_closed bigint Anzahl der Prüfpunkte, die seit dem Neustart der Datenbank geschlossen wurden.
last_closed_checkpoint_ts bigint Zeitstempel des letzten geschlossenen Prüfpunkts.
hardened_recovery_lsn numerisch(38) Die Wiederherstellung beginnt mit diesem LSN.
hardened_root_file_guid uniqueidentifier GUID der Stammdatei, die als Ergebnis des letzten abgeschlossenen Prüfpunkts gehärtet wurde.
hardened_root_file_watermark bigint Nur intern. Gibt an, wie weit es gültig ist, um die Stammdatei bis zu lesen (dies ist nur ein intern relevanter Typ - als BSN bezeichnet).
hardened_truncation_lsn numerisch(38) LSN des Abkürzungspunkts.
log_bytes_since_last_close bigint Bytes vom letzten Ende bis zum aktuellen Protokollende.
time_since_last_close_in_ms bigint Zeit seit dem letzten Schließen des Prüfpunkts.
current_checkpoint_id bigint Derzeit werden diesem Prüfpunkt neue Segmente zugewiesen. Das Prüfpunktsystem ist eine Pipeline. Der aktuelle Prüfpunkt ist das, dem Segmente aus dem Protokoll zugewiesen werden. Sobald sie einen Grenzwert erreicht hat, gibt der Controller den Prüfpunkt frei, und ein neuer Prüfpunkt, der als aktuell erstellt wurde.
current_checkpoint_segment_count bigint Anzahl der Segmente im aktuellen Prüfpunkt.
recovery_lsn_candidate bigint Nur intern. Kandidat, der beim current_checkpoint_id Schließen als Wiederherstellungslsn ausgewählt werden soll.
outstanding_checkpoint_count bigint Die Anzahl der Prüfpunkte in der Pipeline, die auf das Schließen warten.
closing_checkpoint_id bigint ID des Abschlussprüfpunkts.

Serialisierer arbeiten parallel, sodass der Prüfpunkt nach Abschluss des Prüfpunkts ein Kandidat für das Schließen durch schließenden Thread ist. Der schließende Thread kann jedoch jeweils nur einzeln geschlossen werden, und er muss in der Reihenfolge liegen, sodass der Abschlussprüfpunkt der Schließthread ist, an dem der schließende Thread arbeitet.
recovery_checkpoint_id bigint ID des Prüfpunkts, der in der Wiederherstellung verwendet werden soll.
recovery_checkpoint_ts bigint Zeitstempel des Wiederherstellungsprüfpunkts.
bootstrap_recovery_lsn numerisch(38) Wiederherstellungs-LSN für den Bootstrap.
bootstrap_root_file_guid uniqueidentifier GUID der Stammdatei für den Bootstrap.
internal_error_code bigint Fehler, der von einem der Controller-, Serialisierer-, Schließen- und Zusammenführungsthreads angezeigt wird.
bytes_of_large_data_serialized bigint Gibt die Datenmenge an, die serialisiert wurde.
db_in_checkpoint_only_mode bit True, wenn sich die Datenbank im reinen OLTP-Prüfpunktmodus im Arbeitsspeicher befindet.

Gilt für: SQL Server 2022 (16.x) und höhere Versionen.

Berechtigungen

SQL Server 2019 (15.x) und frühere Versionen erfordern VIEW DATABASE STATE berechtigungen für die Datenbank.

SQL Server 2022 (16.x) und höhere Versionen erfordern VIEW DATABASE PERFORMANCE STATE die Berechtigung für die Datenbank.