sys.dm_db_file_space_usage (Transact-SQL)
Gibt Informationen zur Speicherverwendung für jede Datei in der Datenbank zurück.
Hinweis |
---|
Diese Sicht gilt nur für die tempdb-Datenbank. |
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
database_id |
smallint |
Datenbank-ID. |
file_id |
smallint |
Datei-ID. file_id wird in sys.dm_io_virtual_file_stats file_id und in sys.sysfiles fileid zugeordnet. |
unallocated_extent_page_count |
bigint |
Gesamtzahl der Seiten in den nicht zugeordneten Blöcken der Datei. Weitere Informationen finden Sie unter Grundlegendes zu Seiten und Blöcken. Nicht verwendete Seiten in nicht zugeordneten Blöcken sind nicht enthalten. |
version_store_reserved_page_count |
bigint |
Gesamtzahl der Seiten in den gleichartigen Blöcken, die dem Versionsspeicher zugeordnet werden. Versionsspeicherseiten werden nie aus gemischten Blöcken zugeordnet. IAM-Seiten sind nicht enthalten, da sie immer aus gemischten Blöcken zugeordnet werden. PFS-Seiten sind dann enthalten, wenn sie aus einem gleichartigen Block zugeordnet werden. Weitere Informationen finden Sie unter sys.dm_tran_version_store (Transact-SQL). |
user_object_reserved_page_count |
bigint |
Gesamtzahl der Seiten, die aus gleichartigen Blöcken für Benutzerobjekte in der Datenbank zugeordnet werden. Nicht verwendete Seiten aus einem zugeordneten Block sind in der Gesamtzahl enthalten. IAM-Seiten sind nicht enthalten, da sie immer aus gemischten Blöcken zugeordnet werden. PFS-Seiten sind dann enthalten, wenn sie aus einem gleichartigen Block zugeordnet werden. Mithilfe der total_pages-Spalte in der sys.allocation_units-Katalogsicht kann die Anzahl der reservierten Seiten jeder Zuordnungseinheit im Benutzerobjekt zurückgegeben werden. Die total_pages-Spalte enthält jedoch IAM-Seiten. |
internal_object_reserved_page_count |
bigint |
Gesamtzahl der Seiten in gleichartigen Blöcken, die für interne Objekte in der Datei zugeordnet werden. Nicht verwendete Seiten aus einem zugeordneten Block sind in der Gesamtzahl enthalten. IAM-Seiten sind nicht enthalten, da sie immer aus gemischten Blöcken zugeordnet werden. PFS-Seiten sind dann enthalten, wenn sie aus einem einheitlichen Block zugeordnet werden. Es ist keine Katalogsicht bzw. kein dynamisches Verwaltungsobjekt vorhanden, die bzw. das die Seitenanzahl für jedes interne Objekt zurückgibt. |
mixed_extent_page_count |
bigint |
Gesamtzahl der zugeordneten und nicht zugeordneten Seiten in zugeordneten gemischten Blöcken in der Datei. Gemischte Blöcke enthalten Seiten, die verschiedenen Objekten zugeordnet werden. Diese Gesamtzahl enthält alle IAM-Seiten in der Datei. |
Hinweise
Die Anzahl von Seiten wird immer auf Blockebene angegeben. Deshalb sind die Seitenanzahlen immer ein Vielfaches von acht (8). Die Blöcke, die GAM-Zuordnungsseiten (Global Allocation Map) und SGAM-Zuordnungsseiten (Shared Global Allocation Map) enthalten, werden gleichartigen Blöcken zugeordnet. Sie sind nicht in den zuvor beschriebenen Seitenanzahlen enthalten.
Der Inhalt des aktuellen Versionsspeichers befindet sich in sys.dm_tran_version_store. Versionsspeicherseiten werden auf der Dateiebene anstelle der Sitzungs- und Taskebene nachverfolgt, da es sich bei ihnen um globale Ressourcen handelt. Eine Sitzung kann Versionen generieren, doch können die Versionen nach dem Sitzungsende nicht entfernt werden. Beim Cleanup des Versionsspeichers muss die am längsten ausgeführte Transaktion, die Zugriff auf die bestimmte Version benötigt, berücksichtigt werden. Die im Zusammenhang mit dem Cleanup des Versionsspeichers am längsten ausgeführte Transaktion kann durch Anzeigen der elapsed_time_seconds-Spalte in sys.dm_tran_active_snapshot_database_transactions ermittelt werden.
Häufige Änderungen in der mixed_extent_page_count-Spalte können auf die starke Verwendung von SGAM-Seiten hinweisen. In diesem Fall sind zahlreiche PAGELATCH_UP-Wartevorgänge enthalten, bei denen die Warteressource eine SGAM-Seite ist. Weitere Informationen finden Sie unter sys.dm_os_waiting_tasks (Transact-SQL), sys.dm_os_wait_stats (Transact-SQL) und sys.dm_os_latch_stats (Transact-SQL). Weitere Informationen zu SGAM-Seiten finden Sie unter Verwalten von Blockzuordnungen und freiem Speicherplatz.
Benutzerobjekte
Die folgenden Objekte sind in den Seitenindikatoren für Benutzerobjekte enthalten:
Benutzerdefinierte Tabellen und Indizes
Systemtabellen und -indizes
Globale temporäre Tabellen und Indizes
Lokale temporäre Tabellen und Indizes
Tabellenvariablen
In Tabellenwertfunktionen zurückgegebene Tabellen
Interne Objekte
Interne Objekte sind nur in tempdb vorhanden. Die folgenden Objekte sind in den Seitenzählern für interne Objekte enthalten:
Arbeitstabellen für Cursor- oder Spoolvorgänge und die Speicherung temporärer LOBs (Large Object)
Arbeitsdateien für Vorgänge wie Hashverknüpfungen
Sortierläufe
Kardinalität der Beziehungen
Von |
Nach |
Beziehung |
---|---|---|
sys.dm_db_file_space_usage.database_id, file_id |
sys.dm_io_virtual_file_stats.database_id, file_id |
1:1 |
Berechtigungen
Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.
Beispiele
Beispiele, die die sys.dm_db_file_space_usage-Sicht verwenden, finden Sie unter Problembehandlung bei unzureichendem Speicherplatz in tempdb.
Siehe auch