sys.dm_db_session_space_usage (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-Datenbank in Microsoft Fabric

Gibt die Anzahl der von jeder Sitzung in der tempdb Datenbank zugewiesenen und entzuweisenden Seiten während der Lebensdauer der Sitzung zurück.

Hinweis

Um diese Daten in Azure Synapse Analytics zu erhalten, verwenden Sie den Namen sys.dm_pdw_nodes_db_session_space_usage. Diese Syntax wird von serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.

Spaltenname Datentyp Beschreibung
session_id smallint Sitzungs-ID.

session_id session_id in sys.dm_exec_sessions zugeordnet.
database_id smallint Datenbank-ID

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.
user_objects_alloc_page_count bigint Anzahl der Seiten, die von dieser Sitzung während ihrer Lebensdauer für Benutzerobjekte reserviert oder zugewiesen sind.
user_objects_dealloc_page_count bigint Anzahl der Seiten, die durch diese Sitzung während ihrer Lebensdauer nicht mehr für Benutzerobjekte reserviert sind.
internal_objects_alloc_page_count bigint Anzahl der von dieser Sitzung während ihrer Lebensdauer reservierten oder zugewiesenen Seiten für interne Objekte.
internal_objects_dealloc_page_count bigint Anzahl der Seiten, die von dieser Sitzung während ihrer Lebensdauer nicht mehr für interne Objekte reserviert sind.
user_objects_deferred_dealloc_page_count bigint Anzahl der Seiten, die von dieser Sitzung während ihrer Lebensdauer für aufgeschobene Zuweisung in der Warteschlange gehalten wurden.
pdw_node_id int Gilt für: Azure Synapse Analytics

Der Bezeichner für den Knoten, auf dem sich diese Verteilung befindet.

Erlaubnisse

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

Für SQL-Datenbank Basic, S0und S1 Dienstziele sowie für Datenbanken in elastischen Poolsist der Serveradministrator Konto, der Microsoft Entra-Administrator Konto oder die Mitgliedschaft in der ##MS_ServerStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbankdienstziele ist entweder die VIEW DATABASE STATE Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader## Serverrolle erforderlich.

Berechtigungen für SQL Server 2022 und höher

Benötigt VIEW die Berechtigung SERVER PERFORMANCE STATE auf dem Server.

Bemerkungen

IAM-Seiten sind in keiner der Zuteilungs- oder Deallokationszählungen enthalten, die diese Ansicht berichtet.

Seitenzähler initialisieren zu Beginn einer Sitzung auf null und erhöhen sich während der Lebensdauer der Sitzung. Die Zähler verfolgen die Gesamtzahl der Seiten, die für bereits erledigte Aufgaben zugewiesen oder entzuweisen sind. Die Zähler werden nur aktualisiert, wenn eine Aufgabe endet. Sie spiegeln keine laufenden Aufgaben wider.

Wenn eine aufgeschobene Deallocation verwendet wird, meldet die Spalte user_objects_deferred_dealloc_page_count die Seiten, die für eine spätere Deallocation durch einen Hintergrundprozess in der Warteschlange stehen. Wenn die Warteschlange lang ist, kann die eigentliche Neuzuweisung verzögert werden. Infolgedessen könnte die in der user_objects_alloc_page_count - user_objects_dealloc_page_count - user_objects_deferred_dealloc_page_count Berechnung gemeldete Nutzung der Benutzersitzungsräume tempdb vorübergehend niedriger sein als die tatsächliche Auslastung.

Für eine Sitzung können mehrere Anforderungen gleichzeitig aktiv sein. Eine Anfrage kann mehrere Threads oder Aufgaben starten, wenn es sich um eine parallele Abfrage handelt.

Weitere Informationen zu Sitzungen, Anforderungen und Aufgaben finden Sie unter sys.dm_exec_sessions (Transact-SQL), sys.dm_exec_requests (Transact-SQL) und sys.dm_os_tasks (Transact-SQL).

Benutzerobjekte

Die Benutzerobjekt-Seitenzähler umfassen folgende Objekte:

  • 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

Die internen Objekt-Seitenzähler umfassen folgende Objekte:

  • Arbeitstabellen für Cursor- oder Spoolvorgänge und temporären LOB-Speicher (Large Object)

  • Arbeitsdateien für Vorgänge wie z. B. Hashjoins

  • Sortiervorgänge

Physische Joins

Diagramm der physischen Verknüpfungen für sys.dm_db_session_space_usage.

Kardinalitäten von Beziehungen

Von To Relationship
dm_db_session_space_usage.session_id dm_exec_sessions.session_id 1:1-Beziehung