sys.dm_tran_version_store_space_usage (Transact-SQL)

Gilt für: SQL Server 2016 SP 2 und höher Azure SQL Datenbank nicht unterstütztAzure Synapse Analytics Platform System (PDW)

Gibt eine Tabelle zurück, die den gesamten Speicherplatz in tempdb anzeigt, der von Versionsspeicherdatensätzen für jede Datenbank verwendet wird. sys.dm_tran_version_store_space_usage ist effizient und nicht teuer auszuführen, da sie nicht durch einzelne Versionsspeichereinträge navigiert und aggregierten Versionsspeicherspeicherspeicher zurückgibt, der in tempdb pro Datenbank verbraucht wird.

Jeder versionierte Datensatz wird zusammen mit einigen Nachverfolgungs- oder Statusinformationen als Binärdaten gespeichert. Ähnlich wie Datensätze in Datenbanktabellen werden die Versionsspeicherdatensätze in 8192 Bytes umfassenden Seiten gespeichert. Falls ein Datensatz größer ist als 8192 Bytes, wird er in zwei unterschiedliche Datensätze geteilt.

Da der Versionsdatensatz als Binärdaten gespeichert wird, treten keine Probleme mit unterschiedlichen Sortierungen aus unterschiedlichen Datenbanken auf. Verwenden Sie sys.dm_tran_version_store_space_usage, um die Tempdb-Größe basierend auf der Versionsspeicherspeichernutzung von Datenbanken in einer SQL Server Instanz zu überwachen und zu planen.

Spaltenname Datentyp BESCHREIBUNG
database_id int Datenbank-ID der Datenbank.
reserved_page_count bigint Die Gesamtanzahl der seiten, die in tempdb für Versionsspeicherdatensätze der Datenbank reserviert sind.
reserved_space_kb bigint Gesamtspeicherplatz, der in Kilobytes in tempdb für Versionsspeicherdatensätze der Datenbank verwendet wird.

Berechtigungen

Auf SQL Server ist die VIEW SERVER STATE-Berechtigung erforderlich.

Beispiele

Die folgende Abfrage kann verwendet werden, um den in tempdb verbrauchten Speicherplatz anhand des Versionsspeichers jeder Datenbank in einer SQL Server Instanz zu ermitteln.

SELECT 
  DB_NAME(database_id) as 'Database Name',
  reserved_page_count,
  reserved_space_kb 
FROM sys.dm_tran_version_store_space_usage;  

Hier ist das Resultset.

Database Name            reserved_page_count reserved_space_kb  
------------------------ -------------------- -----------  
msdb                      0                    0             
AdventureWorks2016        10                   80             
AdventureWorks2016DW      0                    0             
WideWorldImporters        20                   160             

Weitere Informationen

Dynamische Verwaltungssichten und Funktionen (Transact-SQL)
Dynamische Verwaltungssichten und -funktionen im Zusammenhang mit Transaktionen (Transact-SQL)