sys.dm_db_xtp_checkpoint_stats (Transact-SQL)

Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure

Restituisce le statistiche relative alle operazioni checkpoint OLTP in memoria del database corrente. Se il database non dispone di oggetti OLTP in memoria, sys.dm_db_xtp_checkpoint_stats restituisce un set di risultati vuoto.

Per altre informazioni, vedere OLTP in memoria (ottimizzazione per la memoria).

USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;

SQL Server 2014 (12.x) è sostanzialmente diverso dalle versioni più recenti e viene discusso separatamente.

La tabella seguente descrive le colonne in sys.dm_db_xtp_checkpoint_stats, per SQL Server 2016 (13.x) e versioni successive.

Nome colonna Tipo Descrizione
last_lsn_processed bigint Ultimo LSN visualizzato dal controller.
end_of_log_lsn numeric(38) LSN della fine del log.
bytes_to_end_of_log bigint Byte di log non elaborati dal controller, corrispondenti ai byte tra last_lsn_processed e end_of_log_lsn.
log_consumption_rate bigint Frequenza del consumo del log delle transazioni da parte del controller (in KB/sec).
active_scan_time_in_ms bigint Tempo impiegato dal controller per l'analisi attiva del log delle transazioni.
total_wait_time_in_ms bigint Tempo di attesa cumulativo per il controller durante l'analisi del log.
waits_for_io bigint Numero di attese di I/O del log sostenute dal thread del controller.
io_wait_time_in_ms bigint Tempo cumulativo impiegato per l'attesa dell'I/O del log dal thread del controller.
waits_for_new_log_count bigint Numero di attese sostenute dal thread del controller per la generazione di un nuovo log.
new_log_wait_time_in_ms bigint Tempo cumulativo impiegato in attesa di un nuovo log dal thread del controller.
idle_attempts_count bigint Numero di volte in cui il controller è passato a uno stato di inattività.
tx_segments_dispatched bigint Numero di segmenti visualizzati dal controller e inviati ai serializzatori. Segmento è una parte contigua del log che costituisce un'unità di serializzazione. Attualmente è di dimensioni pari a 1 MB, ma può cambiare in futuro.
segment_bytes_dispatched bigint Numero totale di byte inviati dal controller ai serializzatori, dal riavvio del database.
bytes_serialized bigint Numero totale di byte serializzati dopo il riavvio del database.
serializer_user_time_in_ms bigint Tempo impiegato dai serializzatori in modalità utente.
serializer_kernel_time_in_ms bigint Tempo impiegato dai serializzatori in modalità kernel.
xtp_log_bytes_consumed bigint Numero totale di byte di log utilizzati dopo il riavvio del database.
checkpoints_closed bigint Numero di checkpoint chiusi dopo il riavvio del database.
last_closed_checkpoint_ts bigint Timestamp dell'ultimo checkpoint chiuso.
hardened_recovery_lsn numeric(38) Il ripristino inizia da questo LSN.
hardened_root_file_guid uniqueidentifier GUID del file radice con protezione avanzata in seguito all'ultimo checkpoint completato.
hardened_root_file_watermark bigint Solo interno. Specifica la distanza di lettura del file radice fino a (si tratta di un solo tipo rilevante internamente, denominato BSN).
hardened_truncation_lsn numeric(38) LSN del punto di troncamento.
log_bytes_since_last_close bigint Byte dall'ultimo vicino alla fine corrente del log.
time_since_last_close_in_ms bigint Ora dall'ultima chiusura del checkpoint.
current_checkpoint_id bigint Attualmente vengono assegnati nuovi segmenti a questo checkpoint. Il sistema di checkpoint è una pipeline. Il checkpoint corrente è quello a cui vengono assegnati i segmenti del log. Una volta raggiunto un limite, il controller rilascia il checkpoint e uno nuovo creato come corrente.
current_checkpoint_segment_count bigint Numero di segmenti nel checkpoint corrente.
recovery_lsn_candidate bigint Solo internamente. Candidato da selezionare come recoverylsn quando current_checkpoint_id si chiude.
outstanding_checkpoint_count bigint Numero di checkpoint nella pipeline in attesa di chiusura.
closing_checkpoint_id bigint ID del checkpoint di chiusura.

I serializzatori funzionano in parallelo, quindi al termine, il checkpoint è un candidato per la chiusura tramite thread di chiusura. Ma il thread di chiusura può chiudere uno alla volta e deve essere in ordine, quindi il checkpoint di chiusura è quello su cui il thread di chiusura sta lavorando.
recovery_checkpoint_id bigint ID del checkpoint da usare nel ripristino.
recovery_checkpoint_ts bigint Timestamp del checkpoint di ripristino.
bootstrap_recovery_lsn numeric(38) LSN di ripristino per il bootstrap.
bootstrap_root_file_guid uniqueidentifier GUID del file radice per il bootstrap.
internal_error_code bigint Errore rilevato da qualsiasi controller, serializzatore, chiusura e unione di thread.
bytes_of_large_data_serialized bigint Specifica la quantità di dati serializzati.
db_in_checkpoint_only_mode bit True se il database è in modalità solo checkpoint OLTP in memoria.

Si applica a: SQL Server 2022 (16.x) e versioni successive.

Autorizzazioni

SQL Server 2019 (15.x) e versioni precedenti richiedono VIEW DATABASE STATE l'autorizzazione per il database.

SQL Server 2022 (16.x) e versioni successive richiedono VIEW DATABASE PERFORMANCE STATE l'autorizzazione per il database.