Freigeben über


sys.dm_tran_persistent_version_store_stats (Transact-SQL)

Gilt für: SQL Server 2019 (15.x) Azure SQL-DatenbankAzure SQL Managed Instance

Gibt Informationen zu PVS-Metriken (Persistent Version Store, beständiger Versionsspeicher) zur beschleunigten Datenbankwiederherstellung (Accelerated Database Recovery, ADR) zurück.

Zurückgegebene Tabelle

Spaltenname Datentyp Beschreibung
database_id int Die database_id dieser Zeile.

In Azure SQL-Datenbank sind die Werte innerhalb einer einzelnen Datenbank oder eines Pools für elastische Datenbanken eindeutig, aber nicht innerhalb eines logischen Servers.
pvs_filegroup_id Die Dateigruppe, die den PVS-Versionsspeicher hostet.
persistent_version_store_size_kb bigint Die PVS-Größe in KB. Dieser Wert wird verwendet, um den aktuell von der PVS verwendeten Speicherplatz zu bestimmen.
online_index_version_store_size_kb bigint Die Größe des speziellen Versionsspeichers in Kilobyte, die während der Onlineindexerstellung verwendet wird.
current_aborted_transaction_count bigint Die Anzahl der Abbruchtransaktionen in der Datenbank. Details der Abbruchtransaktionen können in sys.dm_tran_aborted_transactions angezeigt werden.
oldest_active_transaction_id bigint Die Transaktions-ID der ältesten aktiven Transaktion.
oldest_aborted_transaction_id bigint Die Transaktions-ID der ältesten abgebrochenen Transaktion. Wenn der PVS-Reiniger die abgebrochene Transaktion nicht entfernen kann, gibt dieser Wert den ältesten Wert wieder.
min_transaction_timestamp bigint Der minimale sinnvolle Zeitstempel im System aus Momentaufnahmenscans.
online_index_min_transaction_timestamp bigint Der minimale sinnvolle Zeitstempel im System, um die PVS-Bereinigung zu verzögern. Entspricht online_index_version_store_size_kb.
secondary_low_water_mark bigint Der für Abfragen lesbarer sekundärer Replikate aggregierte untere Grenzwert. Es ist eine Transaktions-ID und kann verwendet werden, um mit oldest_active_transaction_id und oldest_aborted_transaction_idzu vergleichen.
offrow_version_cleaner_start_time datetime2(7) Die Startzeit des PVS-Bereinigungsprozesses außerhalb der Zeile.
offrow_version_cleaner_end_time datetime2(7) Die letzte Endzeit des PVS-Bereinigungsprozesses außerhalb der Zeile.
aborted_version_cleaner_start_time datetime2(7) Der Startzeitstempel eines vollständigen Aufräumens.
aborted_version_cleaner_end_time datetime2(7) Der Endzeitstempel des letzten vollständigen Aufräumens. Wenn die Startzeit einen Wert aufweist, die Endzeit aber nicht, bedeutet dies, dass die PVS-Bereinigung in dieser Datenbank fortgesetzt wird.
pvs_off_row_page_skipped_low_water_mark bigint Die Anzahl der wegen der Verzögerung durch sekundäre Leseabfragen zur Rückforderung übersprungenen Seiten.
pvs_off_row_page_skipped_transaction_not_cleaned bigint Die Anzahl der wegen abgebrochener Transaktionen zur Rückforderung übersprungenen Seiten. Beachten Sie, dass dieser Wert nicht den PVS-Haltewert für abgebrochene Transaktionen widerspiegelt, da die Version bereinigt einen Mindestschwellenwert für die Bereinigung der abgebrochenen Transaktionsversion verwendet. Kann für große PVS-Probleme ignoriert werden.
pvs_off_row_page_skipped_oldest_active_xdesid bigint Die Anzahl der wegen der ältesten aktiven Transaktion zur Rückforderung übersprungenen Seiten.
pvs_off_row_page_skipped_min_useful_xts bigint Die Anzahl der wegen eines langen Momentaufnahmenscans zur Rückforderung übersprungenen Seiten.
pvs_off_row_page_skipped_oldest_snapshot bigint Die Anzahl der aufgrund von Aktivitäten zu Online-Indexneuerstellung zur Rückforderung übersprungenen Seiten. Dieses Szenario ist für die PVS-Nutzung nicht üblich.
pvs_off_row_page_skipped_oldest_aborted_xdesid bigint Die Anzahl der wegen der ältesten abgebrochenen Transaktionen zur Rückforderung übersprungenen Seiten. Gibt an, wie viele Seiten während der Bereinigung übersprungen wurden, da sie Zeilenversionen für abgebrochene Transaktionen enthielten.

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

Berechtigungen

Für SQL Server und SQL Managed Instance ist die VIEW SERVER PERFORMANCE STATE-Berechtigung erforderlich.

Für die SQL-Datenbank-Ziele Basic, S0 und S1 sowie für Datenbanken in Pools für elastische Datenbanken ist das Konto des Serveradministrators oder des Microsoft Entra-Administratorkontos oder die Mitgliedschaft in der ##MS_ServerPerformanceStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE PERFORMANCE STATE-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerPerformanceStateReader##-Serverrolle erforderlich.