Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Meldet die Arbeitsspeicherconsumer auf Datenbankebene im In-Memory OLTP-Datenbankmodul. Diese Sicht gibt eine Zeile für jeden Arbeitsspeicherconsumer zurück, den das Datenbankmodul verwendet.
Weitere Informationen finden Sie unter In-Memory OLTP (Arbeitsspeicheroptimierung).
Gilt für: SQL Server (SQL Server 2014 bis aktuelle Version). |
Spaltenname |
Datentyp |
Beschreibung |
|---|---|---|
memory_consumer_id |
bigint |
ID (intern) des Arbeitsspeicherconsumers. |
memory_consumer_type |
int |
Der Typ des Arbeitsspeicherconsumers:
|
memory_consumer_type_desc |
nvarchar(64) |
Typ des Arbeitsspeicherconsumers: VARHEAP, HASH oder PGPOOL.
|
memory_consumer_desc |
nvarchar(64) |
Die Beschreibung der Arbeitsspeicherconsumer-Instanz:
|
object_id |
bigint |
Die Objekt-ID, der der belegte Arbeitsspeicher attributiert wird. Ein negativer Wert für Systemobjekte. |
index_id |
int |
Die Index-ID des Consumers (sofern vorhanden). NULL für Basistabellen. |
allocated_bytes |
bigint |
Die Anzahl der für den Consumer reservierten Bytes. |
used_bytes |
bigint |
Die von diesem Consumer verwendeten Bytes. Gilt nur für varheap. |
allocation_count |
int |
Anzahl der Zuordnungen. |
partition_count |
int |
Nur interne Verwendung. |
sizeclass_count |
int |
Nur interne Verwendung. |
min_sizeclass |
int |
Nur interne Verwendung. |
max_sizeclass |
int |
Nur interne Verwendung. |
memory_consumer_address |
varbinary |
Die interne Adresse des Consumers. Nur interne Verwendung. |
Hinweise
In der Ausgabe verweisen die Zuordnungen auf Datenbankebene auf Benutzertabellen, Indizes und Systemtabellen. VARHEAP mit object_id = NULL verweist auf Arbeitsspeicher, der Tabellen mit Spalten variabler Länge zugeordnet ist.
Berechtigungen
Alle Zeilen werden zurückgegeben, wenn Sie über die VIEW DATABASE STATE-Berechtigung für die aktuelle Datenbank verfügen. Andernfalls wird ein leeres Rowset zurückgegeben.
Wenn Sie nicht über die VIEW DATABASE-Berechtigung verfügen, werden alle Spalten für Zeilen in Tabellen zurückgegeben, für die Sie die SELECT-Berechtigung besitzen.
Systemtabellen werden nur für Benutzer mit der VIEW DATABASE STATE-Berechtigung zurückgegeben.
Beispiele
-- memory consumers (database level)
SELECT OBJECT_NAME(object_id), *
FROM sys.dm_db_xtp_memory_consumers;
Benutzerszenario
-- memory consumers (database level)
select convert(char(10), object_name(object_id)) as Name,
convert(char(10),memory_consumer_type_desc ) as memory_consumer_type_desc, object_id,index_id, allocated_bytes, used_bytes
from sys.dm_db_xtp_memory_consumers
Im Folgenden die Ausgabe mit einer Teilmenge der Spalten. Die Zuordnungen auf Datenbankebene verweisen auf Benutzertabellen, Indizes und Systemtabellen. VARHEAP mit object_id = NULL (letzte Zeile) verweist auf Arbeitsspeicher, der Datenzeilen der Tabellen (in diesem Beispiel "t1") zugeordnet ist. In MB konvertiert betragen die belegten Bytes 1340 MB.
Name memory_consumer_type_desc object_id index_id allocated_bytes used_bytes
---------- ------------------------- ----------- ----------- -------------------- --------------------
t3 HASH 629577281 2 8388608 8388608
t2 HASH 597577167 2 8388608 8388608
t1 HASH 565577053 2 1048576 1048576
NULL HASH -6 1 2048 2048
NULL VARHEAP -6 NULL 0 0
NULL HASH -5 3 8192 8192
NULL HASH -5 2 8192 8192
NULL HASH -5 1 8192 8192
NULL HASH -4 1 2048 2048
NULL VARHEAP -4 NULL 0 0
NULL HASH -3 1 2048 2048
NULL HASH -2 2 8192 8192
NULL HASH -2 1 8192 8192
NULL VARHEAP -2 NULL 196608 26496
NULL HASH 0 1 2048 2048
NULL PGPOOL 0 NULL 0 0
NULL VARHEAP NULL NULL 1405943808 1231220560
(17 row(s) affected)
Der gesamte dieser DMV zugeordnete und von ihr belegte Arbeitsspeicher ist gleichwertig mit der Objektebene in sys.dm_db_xtp_table_memory_stats (Transact-SQL).
select sum(allocated_bytes)/(1024*1024) as total_allocated_MB,
sum(used_bytes)/(1024*1024) as total_used_MB
from sys.dm_db_xtp_memory_consumers
total_allocated_MB total_used_MB
-------------------- --------------------
1358 1191
Siehe auch
Konzepte
Dynamische Verwaltungssichten für speicheroptimierte Tabellen (Transact-SQL)