Freigeben über


sys.dm_xtp_system_memory_consumers (Transact-SQL)

Meldet Arbeitsspeicherconsumer auf Systemebene für In-Memory OLTP. Der Arbeitsspeicher für diese Consumer stammt entweder aus dem Standardpool (wenn die Zuordnung im Kontext eines Benutzerthreads enthalten ist) oder dem internen Pool (wenn die Zuordnung im Kontext eines Systemthreads enthalten ist).

-- system memory consumers @ instance
select * from sys.dm_xtp_system_memory_consumers

Weitere Informationen finden Sie unter In-Memory OLTP (Arbeitsspeicheroptimierung).

Gilt für: SQL Server (SQL Server 2014 bis aktuelle Version).

Spaltenname

Typ

Beschreibung

memory_consumer_id

bigint

Interne ID für Arbeitsspeicherconsumer.

memory_consumer_type

int

Eine ganze Zahl, die den Typ des Arbeitsspeicherconsumers darstellt.

  • 0 – Es wird kein Consumer angezeigt.

    Aggregiert die Speichernutzung von zwei oder mehreren Consumern.

  • 1 – LOOKASIDE

    Verfolgt die Arbeitsspeichernutzung für ein Systemlookaside nach.

  • 2 - VARHEAP

    Verfolgt die Arbeitsspeichernutzung für einen Heap variabler Länge nach.

  • 4 – E/A-Seitenpool

    Verfolgt die Arbeitsspeichernutzung für einen Systemseitenpool nach, der für E/A-Vorgänge verwendet wird.

memory_consumer_type_desc

nvarchar(16)

Die Beschreibung des Typs des Arbeitsspeicherconsumers:

  • 0 – Es wird kein Consumer angezeigt.

  • 1 – LOOKASIDE

  • 2 - VARHEAP

  • 4 - PGPOOL

memory_consumer_desc

nvarchar(64)

Die Beschreibung der Arbeitsspeicherconsumer-Instanz:

  • VARHEAP

    Der Systemheap. Allgemein. Wird derzeit nur verwendet, um Arbeitsaufgaben der Garbage Collection zuzuordnen.

    Der Lookasideheap. Wird von Lookasides verwendet, wenn die Anzahl der in der Lookasideliste enthaltenen Elemente einen vordefinierten Grenzwert (normalerweise etwa 5.000 Elemente) erreicht.

  • PGPOOL

    Bei E/A-Systempools gibt es drei unterschiedliche Größen für Systemseitenpools: 4 K, 64 K und 256 K.

lookaside_id

bigint

Die ID des threadlokalen Lookaside-Arbeitsspeicheranbieters.

pagepool_id

bigint

Die ID des threadlokalen Seitenpool-Arbeitsspeicheranbieters.

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-Arbeitsspeicherconsumer.

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.

Berechtigungen

Erfordert VIEW SERVER STATE-Berechtigungen auf dem Server.

Benutzerszenario

-- system memory consumers @ instance
selectmemory_consumer_type_desc, 
allocated_bytes/1024 as allocated_bytes_kb, 
used_bytes/1024 as used_bytes_kb, allocation_count
from sys.dm_xtp_system_memory_consumers

In der Ausgabe werden alle Arbeitsspeicherconsumer auf Systemebene angezeigt. Beispielsweise gibt es Consumer für das Transaktionslookaside.

memory_consumer_type_name           memory_consumer_desc                           allocated_bytes_kb   used_bytes_kb        allocation_count
-------------------------------          ---------------------                          -------------------  --------------        ----------------
VARHEAP                                  Lookaside heap                                 0                    0                    0
VARHEAP                                  System heap                                    768                  0                    2
LOOKASIDE                                GC transaction map entry                       64                   64                   910
LOOKASIDE                                Redo transaction map entry                     128                  128                  1260
LOOKASIDE                                Recovery table cache entry                     448                  448                  8192
LOOKASIDE                                Transaction recent rows                        3264                 3264                 4444
LOOKASIDE                                Range cursor                                   0                    0                    0
LOOKASIDE                                Hash cursor                                    3200                 3200                 11070
LOOKASIDE                                Transaction save-point set entry               0                    0                    0
LOOKASIDE                                Transaction partially-inserted rows set        704                  704                  1287
LOOKASIDE                                Transaction constraint set                     576                  576                  1940
LOOKASIDE                                Transaction save-point set                     0                    0                    0
LOOKASIDE                                Transaction write set                          704                  704                  672
LOOKASIDE                                Transaction scan set                           320                  320                  156
LOOKASIDE                                Transaction read set                           704                  704                  343
LOOKASIDE                                Transaction                                    4288                 4288                 1459
PGPOOL                                   System 256K page pool                          5120                 5120                 20
PGPOOL                                   System 64K page pool                           0                    0                    0
PGPOOL                                   System 4K page pool                            24                   24                   6

So zeigen Sie den durch Systemzuordnungen belegten Gesamtarbeitsspeicher an

select sum(allocated_bytes)/(1024*1024) as total_allocated_MB, sum(used_bytes)/(1024*1024) as total_used_MB 
from sys.dm_xtp_system_memory_consumers

total_allocated_MB   total_used_MB
-------------------- --------------------
2                    2

Siehe auch

Konzepte

Dynamische Verwaltungssichten für speicheroptimierte Tabellen (Transact-SQL)