Partager via


sys.dm_db_xtp_checkpoint_stats (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Retourne des statistiques sur les opérations de point de contrôle de l'OLTP en mémoire dans la base de données active. Si la base de données n’a aucun objet OLTP en mémoire, sys.dm_db_xtp_checkpoint_stats retourne un jeu de résultats vide.

Pour plus d’informations, consultez OLTP en mémoire (optimisation en mémoire).

USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;

SQL Server 2014 (12.x) est sensiblement différent des versions les plus récentes et est abordé séparément.

Le tableau suivant décrit les colonnes dans sys.dm_db_xtp_checkpoint_stats, pour SQL Server 2016 (13.x) et versions ultérieures.

Nom de la colonne Type Description
last_lsn_processed bigint Dernier LSN vu par le contrôleur.
end_of_log_lsn numeric(38) LSN de la fin du journal.
bytes_to_end_of_log bigint Octets de journal non traités par le contrôleur, correspondant aux octets compris entre last_lsn_processed et end_of_log_lsn.
log_consumption_rate bigint Taux de consommation du journal des transactions par le contrôleur (en Ko/s).
active_scan_time_in_ms bigint Temps passé par le contrôleur pour analyser activement le journal des transactions.
total_wait_time_in_ms bigint Temps d’attente cumulé pour le contrôleur tout en n’analysant pas le journal.
waits_for_io bigint Nombre d’attentes pour les E/S de journal encourues par le thread du contrôleur.
io_wait_time_in_ms bigint Temps cumulé passé en attente sur les E/S de journal par le thread du contrôleur.
waits_for_new_log_count bigint Nombre d’attentes engagées par le thread du contrôleur pour qu’un nouveau journal soit généré.
new_log_wait_time_in_ms bigint Temps cumulé passé en attente sur un nouveau journal par le thread du contrôleur.
idle_attempts_count bigint Nombre de fois où le contrôleur est passé à un état inactif.
tx_segments_dispatched bigint Nombre de segments vus par le contrôleur et distribués aux sérialiseurs. Segment est une partie contiguë du journal qui forme une unité de sérialisation. Il est actuellement dimensionné à 1 Mo, mais peut changer à l’avenir.
segment_bytes_dispatched bigint Nombre total d’octets distribués par le contrôleur aux sérialiseurs depuis le redémarrage de la base de données.
bytes_serialized bigint Nombre total d’octets sérialisés depuis le redémarrage de la base de données.
serializer_user_time_in_ms bigint Temps passé par des sérialiseurs en mode utilisateur.
serializer_kernel_time_in_ms bigint Temps passé par des sérialiseurs en mode noyau.
xtp_log_bytes_consumed bigint Nombre total d’octets de journal consommés depuis le redémarrage de la base de données.
checkpoints_closed bigint Nombre de points de contrôle fermés depuis le redémarrage de la base de données.
last_closed_checkpoint_ts bigint Horodatage du dernier point de contrôle fermé.
hardened_recovery_lsn numeric(38) La récupération commence à partir de ce LSN.
hardened_root_file_guid uniqueidentifier GUID du fichier racine qui s’est renforcé suite au dernier point de contrôle terminé.
hardened_root_file_watermark bigint Interne uniquement. Spécifie jusqu’à quel point il est valide de lire le fichier racine jusqu’à (il s’agit d’un type pertinent en interne uniquement - appelé BSN).
hardened_truncation_lsn numeric(38) LSN du point de troncation.
log_bytes_since_last_close bigint Octets de la dernière proche de la fin actuelle du journal.
time_since_last_close_in_ms bigint Heure depuis la dernière fermeture du point de contrôle.
current_checkpoint_id bigint Actuellement, de nouveaux segments sont affectés à ce point de contrôle. Le système de point de contrôle est un pipeline. Le point de contrôle actuel est celui auquel les segments du journal sont affectés. Une fois qu’il atteint une limite, le contrôleur libère le point de contrôle et un nouveau point de contrôle créé comme actif.
current_checkpoint_segment_count bigint Nombre de segments dans le point de contrôle actuel.
recovery_lsn_candidate bigint En interne uniquement. Candidat à choisir comme recoverylsn lors current_checkpoint_id de la fermeture.
outstanding_checkpoint_count bigint Nombre de points de contrôle dans le pipeline en attente de fermeture.
closing_checkpoint_id bigint ID du point de contrôle fermant.

Les sérialiseurs fonctionnent en parallèle. Par conséquent, une fois terminés, le point de contrôle est un candidat à la fermeture par thread fermé. Mais le thread de fermeture ne peut fermer qu’un seul à la fois et il doit être dans l’ordre, de sorte que le point de contrôle de fermeture est celui sur lequel le thread de fermeture fonctionne.
recovery_checkpoint_id bigint ID du point de contrôle à utiliser dans la récupération.
recovery_checkpoint_ts bigint Horodatage du point de contrôle de récupération.
bootstrap_recovery_lsn numeric(38) LSN de récupération pour le démarrage.
bootstrap_root_file_guid uniqueidentifier GUID du fichier racine pour le démarrage.
internal_error_code bigint Erreur observée par l’un des threads de contrôleur, de sérialiseur, de fermeture et de fusion.
bytes_of_large_data_serialized bigint Spécifie la quantité de données sérialisées.
db_in_checkpoint_only_mode bit True si la base de données est en mode de point de contrôle OLTP en mémoire uniquement.

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

autorisations

SQL Server 2019 (15.x) et les versions antérieures nécessitent VIEW DATABASE STATE une autorisation sur la base de données.

SQL Server 2022 (16.x) et versions ultérieures nécessitent VIEW DATABASE PERFORMANCE STATE une autorisation sur la base de données.