Freigeben über


sys.dm_db_file_space_usage (Transact-SQL)

Gibt Informationen zur Speicherverwendung aller Dateien in der Datenbank zurück.

HinweisHinweis

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 file_id in sys.dm_io_virtual_file_stats und fileid in sys.sysfiles 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 umfangreiche 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 den Tabellenwertfunktionen zurückgegebene Tabellen

Interne Objekte

Interne Objekte sind nur in der tempdb-Datenbank enthalten. Die folgenden Objekte sind in den Seitenindikatoren 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.