sys.dm_os_memory_brokers (Transact-SQL)
Le allocazioni interne a SQL Server utilizzano il gestore della memoria di SQL Server. La registrazione della differenza tra i contatori di memoria di processo da sys.dm_os_process_memory e i contatori interni può indicare l'utilizzo della memoria da parte dei componenti esterni nello spazio in memoria di SQL Server.
I broker della memoria distribuiscono equamente le allocazioni di memoria tra i vari componenti all'interno di SQL Server, in base all'utilizzo corrente e previsto. I broker di memoria non eseguono allocazioni. Le registrano solo per calcolare la distribuzione.
Nella tabella seguente sono disponibili informazioni sui broker di memoria.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
memory_broker_type |
nvarchar(60) |
Tipo di broker di memoria. Esistono attualmente tre tipi di broker di memoria in SQL Server.
ValoreDescrizione
MEMORYBROKER_FOR_CACHELa memoria allocata per l'utilizzo da parte degli oggetti memorizzati nella cache.
MEMORYBROKER_FOR_STEALMemoria prelevata dal pool di buffer. Tale memoria non è disponibile per il riutilizzo da parte di altri componenti fino a che non viene liberata dal proprietario corrente.
MEMORYBROKER_FOR_RESERVEMemoria riservata per l'uso futuro da parte delle richieste attualmente in esecuzione.
|
allocations_kb |
bigint |
Quantità di memoria, in kilobyte (KB), allocata a questo tipo di broker. |
allocations_per_sec |
int |
Attuale velocità di allocazione attribuita a questo broker. |
target_allocations_kb |
bigint |
Quantità consigliata di memoria allocata, in kilobyte (KB) basata sulle impostazioni correnti e sul modello di utilizzo della memoria. Il broker deve crescere o diminuire fino a questo numero. |
future_allocations_kb |
bigint |
Numero previsto di allocazioni, in kilobyte (KB), che verranno effettuate nei prossimi secondi. |
last_notification |
nvarchar(60) |
Indicazione sull'utilizzo della memoria basato sulle impostazioni correnti e sul modello di utilizzo. I valori validi sono i seguenti:
|
pool_id |
int |
ID del pool di risorse se associato a un pool di Resource Governor. |
allocations_kb_per_sec |
bigint |
Velocità delle allocazioni di memoria in kilobyte (KB) al secondo. Il valore può essere negativo per le deallocazioni di memoria. |
predicated_allocations_kb |
bigint |
Quantità stimata di memoria allocata dal broker. Si basa sul modello di utilizzo della memoria. |
overall_limit_kb |
bigint |
Quantità massima di memoria, in kilobyte (KB), allocabile dal broker. |
Autorizzazioni
È richiesta l'autorizzazione VIEW SERVER STATE nel server.