sys.dm_os_memory_objects (Transact-SQL)

Gibt Speicherobjekte zurück, die zurzeit von SQL Server zugeordnet werden. sys.dm_os_memory_objects wird in erster Linie für die Analyse der Speichernutzung und Identifizierung möglicher Speicherverluste verwendet.

Spaltenname

Datentyp

Beschreibung

memory_object_address

varbinary(8)

Adresse des Speicherobjekts. NULL ist nicht zulässig.

parent_address

varbinary(8)

Adresse des übergeordneten Speicherobjekts. Lässt NULL-Werte zu.

pages_allocated_count

int

Anzahl der von diesem Objekt zugeordneten Seiten. NULL ist nicht zulässig.

creation_options

int

Nur zur internen Verwendung. Lässt NULL-Werte zu.

bytes_used

bigint

Nur zur internen Verwendung. Lässt NULL-Werte zu.

type

nvarchar(60)

Typ des Speicherobjekts:

Hiermit wird eine Komponente angegeben, zu der dieses Speicherobjekt gehört, oder die Funktion des Speicherobjekts. Lässt NULL-Werte zu.

name

varchar(128)

Nur zur internen Verwendung. NULL ist zulässig.

memory_node_id

smallint

ID eines Speicherknotens, der von diesem Speicherobjekt verwendet wird. NULL ist nicht zulässig.

creation_time

datetime

Nur intern. NULL ist zulässig.

page_size_in_bytes

int

Größe der von diesem Objekt zugeordneten Seiten. NULL ist nicht zulässig.

max_pages_allocated_count

int

Maximale Anzahl der von diesem Speicherobjekt zugeordneten Seiten. NULL ist nicht zulässig.

page_allocator_address

varbinary(8)

Speicheradresse der Seitenzuordnung. NULL ist nicht zulässig. Weitere Informationen finden Sie unter sys.dm_os_memory_clerks (Transact-SQL).

creation_stack_address

varbinary(8)

Nur zur internen Verwendung. NULL ist zulässig.

sequence_num

int

Nur zur internen Verwendung. Lässt NULL-Werte zu.

Berechtigungen

Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.

Hinweise

Speicherobjekte sind Heaps. Sie stellen Zuordnungen mit einer feineren Granularität bereit als Arbeitsspeicherclerks. SQL Server-Komponenten verwenden Speicherobjekte anstelle von Arbeitsspeicherclerks. Speicherobjekte verwenden die Seitenzuordnungsschnittstelle des Arbeitsspeicherclerks für die Zuordnung von Seiten. Speicherobjekte verwenden keine Schnittstellen, die auf virtuellem Speicher oder Shared Memory basieren. Abhängig von den Zuordnungsmustern können Komponenten verschiedene Typen von Speicherobjekten erstellen, um Bereiche zufälliger Größe zuzuordnen.

Die Standardseitengröße eines Speicherobjekts beträgt 8 KB. Inkrementelle Speicherobjekte können jedoch Seitengrößen zwischen 512 Bytes und 8 KB aufweisen.

HinweisHinweis

Die Seitengröße entspricht nicht der maximalen Zuordnung. Die Seitengröße ist vielmehr eine Zuordnungseinheit, die von einer Seitenzuordnung unterstützt und von einem Arbeitsspeicherclerk implementiert wird. Sie können Zuordnungen von 16 KB und darüber von Speicherobjekten anfordern. Die Anforderung wird schließlich an die Mehrfachseitenzuordnung des Speicherknotens weitergeleitet.

Beispiele

Im folgenden Beispiel wird der von den einzelnen Speicherobjekttypen zugeordnete Speicherumfang zurückgegeben.

SELECT SUM (pages_allocated_count * page_size_in_bytes) as 'Bytes Used', type 
FROM sys.dm_os_memory_objects
GROUP BY type 
ORDER BY 1 DESC;
GO