sys.dm_db_xtp_checkpoint_stats (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL verwaltete Instanz
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 im Thema unter SQL Server 2014 behandelt.
SQL Server 2016 (13.x) und höher
In der folgenden Tabelle werden die Spalten beginnend sys.dm_db_xtp_checkpoint_stats
mit SQL Server 2016 (13.x) 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. 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 ein Limit erreicht hat, wird der Prüfpunkt vom Controller freigegeben 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 ist, der durch schließenden Thread geschlossen werden soll. 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 | Die Datenmenge, die serialisiert wurde. |
db_in_checkpoint_only_mode |
bit | True, wenn sich die Datenbank im reinen OLTP-Prüfpunktmodus im Arbeitsspeicher befindet. |
SQL Server 2014 (12.x)
In der folgenden Tabelle werden die Spalten in sys.dm_db_xtp_checkpoint_stats
, für SQL Server 2014 (12.x) beschrieben.
Spaltenname | type | Beschreibung |
---|---|---|
log_to_process_in_bytes |
bigint | Die Anzahl von Protokollbytes zwischen der aktuellen Protokollfolgenummer (LSN) und dem Protokollende des Threads. |
total_log_blocks_processed |
bigint | Gesamtzahl der Protokollblöcke, die seit dem Start des Servers verarbeitet wurden. |
total_log_records_processed |
bigint | Gesamtzahl der Protokolldatensätze, die seit dem Start des Servers verarbeitet wurden. |
xtp_log_records_processed |
bigint | Gesamtzahl der In-Memory OLTP-Protokolldatensätze, die seit dem Start des Servers verarbeitet wurden. |
total_wait_time_in_ms |
bigint | Kumulierte Wartezeit (ms). |
waits_for_io |
bigint | Anzahl von Wartevorgängen für Protokoll-EAs. |
io_wait_time_in_ms |
bigint | Kumulierte Wartezeit für Protokoll-EA. |
waits_for_new_log |
bigint | Anzahl der Wartevorgänge für neu zu erstellendes Protokoll. |
new_log_wait_time_in_ms |
bigint | Kumulierte Zeit für das Warten auf ein neues Protokoll. |
log_generated_since_last_checkpoint_in_bytes |
bigint | Umfang des seit dem letzten In-Memory OLTP-Prüfpunkt generierten Protokolls. |
ms_since_last_checkpoint |
bigint | Zeit in Millisekunden seit dem letzten In-Memory OLTP-Prüfpunkt. |
checkpoint_lsn |
numerisch (38) | Die Protokollfolgenummer (LSN) der Wiederherstellung, die dem zuletzt abgeschlossenen OLTP-Prüfpunkt im Arbeitsspeicher zugeordnet ist. |
current_lsn |
numerisch (38) | Die LSN des Protokolldatensatzes, der gerade verarbeitet wird. |
end_of_log_lsn |
numerisch (38) | Die LSN des Protokollendes. |
task_address |
varbinary(8) | Die Adresse von SOS_Task. Nehmen Sie teil, um weitere Informationen zu sys.dm_os_tasks finden. |
Berechtigungen
Erfordert die VIEW DATABASE STATE
-Berechtigung für die Datenbank.
Berechtigungen für SQL Server 2022 und höher
Erfordert DIE BERECHTIGUNG "DATENBANKLEISTUNGSSTATUS ANZEIGEN" für die Datenbank.
Zugehöriger Inhalt
- Einführung in speicheroptimierte Tabellen
- Speicheroptimierte Tabellen-Dynamische Verwaltungsansichten (Transact-SQL)
- In-Memory OLTP –Übersicht und Nutzungsszenarien
- Optimieren der Leistung mithilfe von In-Memory-Technologien in Azure SQL-Datenbank
- Optimieren der Leistung mithilfe von In-Memory-Technologien in Azure SQL verwaltete Instanz
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für