sys.dm_os_memory_brokers (Transact-SQL)
SQL Server 的内部分配使用 SQL Server 内存管理器。 跟踪来自 sys.dm_os_process_memory 的进程内存计数器与内部计数器之间的差异可以指示外部组件在 SQL Server 内存空间中的内存使用情况。
内存中介器基于当前使用量和预测的使用量来公平地在 SQL Server 内的各种组件之间分布内存分配。 内存中介器不执行分配。 它们只跟踪内存分配以计算分布情况。
下表提供了有关内存中介器的信息。
列名 |
数据类型 |
说明 |
||||||||
---|---|---|---|---|---|---|---|---|---|---|
pool_id |
int |
在资源池与资源调控器池相关联的情况下的资源池 ID。 |
||||||||
memory_broker_type |
nvarchar(60) |
内存中介器的类型。 目前,SQL Server 中有三种类型的内存中介器。
|
||||||||
allocations_kb |
bigint |
已分配给这种类型的中介器的内存量(以 KB 为单位)。 |
||||||||
allocations_kb_per_sec |
bigint |
每秒钟的内存分配速率(以 KB 为单位)。 对于内存释放,该值可以为负值。 |
||||||||
predicted_allocations_kb |
bigint |
由中介器预测的已分配的内存量。 这基于内存使用模式。 |
||||||||
target_allocations_kb |
bigint |
基于当前设置和内存使用模式而建议分配的内存量(以 KB 为单位)。 该中介器应增长或缩减到此数目。 |
||||||||
future_allocations_kb |
bigint |
将在随后几秒内完成的预计分配量(以 KB 为单位)。 |
||||||||
overall_limit_kb |
bigint |
中介器可分配的最大内存量(以 KB 为单位)。 |
||||||||
last_notification |
nvarchar(60) |
基于当前设置和使用模式的内存使用建议。 以下是有效值:
|
权限
需要对服务器具有 VIEW SERVER STATE 权限。