sys.dm_os_memory_brokers (Transact-SQL)

Gilt für:SQL ServerAzure Synapse Analytics AnalyticsPlatform System (PDW)

Zuordnungen, die für SQL Server intern sind, verwenden den SQL Server-Speicher-Manager. Das Nachverfolgen des Unterschieds zwischen Prozessspeicherzählern von sys.dm_os_process_memory und internen Leistungsindikatoren kann die Speichernutzung von externen Komponenten im SQL Server-Speicherbereich angeben.

Speicherbroker verteilen Speicherzuordnungen relativ zwischen verschiedenen Komponenten innerhalb von SQL Server basierend auf der aktuellen und projizierten Verwendung. Speicherbroker führen keine Zuordnungen durch. Sie verfolgen Zuordnungen nur zum Berechnen der Verteilung.

Die folgende Tabelle enthält Informationen zu Speicherbrokern.

Hinweis

Um dies von Azure Synapse Analytics oder Analytics Platform System (PDW) aufzurufen, verwenden Sie den Namen sys.dm_pdw_nodes_os_memory_brokers. Diese Syntax wird vom serverlosen SQL-Pool in Azure Synapse Analytics nicht unterstützt.

Spaltenname Datentyp Beschreibung
pool_id int ID des Ressourcenpools, wenn er einem Ressourcenkontrollenpool zugeordnet ist.
memory_broker_type nvarchar(60) Typ des Speicherbrokers. Es gibt derzeit drei Arten von Speicherbrokern in SQL Server, die unten mit ihren Beschreibungen aufgeführt sind.

MEMORYBROKER_FOR_CACHE: Speicher, der für die Verwendung durch zwischengespeicherte Objekte (nicht pufferpoolcache) zugewiesen wird.

MEMORYBROKER_FOR_STEAL: Speicher, der vom Pufferpool gestohlen wird. Dieser Speicher wird von Speicherbearbeitern nachverfolgt und steht erst wiederverwendet, wenn er vom aktuellen Besitzer freigegeben wird.

MEMORYBROKER_FOR_RESERVE: Speicher, der für die zukünftige Verwendung durch derzeit ausgeführte Anforderungen reserviert ist.
allocations_kb bigint Größe des Arbeitsspeichers in Kilobyte (KB), der diesem Typ Broker zugeordnet wurde.
allocations_kb_per_sec bigint Rate der Speicherbelegungen in Kilobyte (KB) pro Sekunde. Dieser Wert kann für die Aufhebung von Arbeitsspeicherzuordnungen negativ sein.
predicted_allocations_kb bigint Vorhergesagte Größe des durch den Broker belegten Arbeitsspeichers. Dieser Wert basiert auf dem Speicherauslastungsmuster.
target_allocations_kb bigint Empfohlene Größe des belegten Speichers in Kilobyte (KB) auf Basis der aktuellen Einstellungen und des Speicherverwendungsmusters. Dieser Broker sollte auf diesen Wert vergrößert oder verkleinert werden.
future_allocations_kb bigint Prognostizierte Anzahl der Zuordnungen in Kilobyte (KB), die in den nächsten Sekunden erfolgen werden.
overall_limit_kb bigint Maximale Speichermenge in Kilobyte (KB), die der Broker zuordnen kann.
last_notification nvarchar(60) Speicherauslastungsempfehlung auf Basis der aktuellen Einstellungen und des Verwendungsmusters. Gültige Werte sind:

grow

shrink

Stabil
pdw_node_id int Gilt für: Azure Synapse Analytics, Analytics Platform System (PDW)

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

Berechtigungen

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

Für SQL-Datenbank Standard-, S0- und S1-Dienstziele sowie für Datenbanken in elastischen Pools ist das Serveradministratorkonto, das Microsoft Entra-Administratorkonto oder die Mitgliedschaft in der ##MS_ServerStateReader##Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele 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

Erfordert die VIEW SERVER PERFORMANCE STATE-Berechtigung auf dem Server.

Siehe auch

Dynamische Verwaltungssichten in Verbindung mit dem SQL Server-Betriebssystem (Transact-SQL)