sys.dm_resource_governor_resource_pools (Transact-SQL)
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
返回有关当前资源池状态、资源池的当前配置以及资源池统计信息的信息。
注意
若要从 Azure Synapse Analytics 或 Analytics 平台系统(PDW)调用此名称,请使用名称 sys.dm_pdw_nodes_resource_governor_resource_pools
。 Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。
列名称 | 数据类型 | 描述 |
---|---|---|
pool_id |
int | 资源池的 ID。 不可为 Null。 |
name |
sysname | 资源池的名称。 不可为 Null。 |
statistics_start_time |
datetime | 为该池重置统计信息的时间。 不可为 Null。 |
total_cpu_usage_ms |
bigint | 自重置 Resource Govenor 统计信息以来的累计 CPU 使用量(毫秒)。 不可为 Null。 |
cache_memory_kb |
bigint | 当前的缓存内存总用量(以 KB 为单位)。 不可为 Null。 |
compile_memory_kb |
bigint | 当前总的内存盗用量(以 KB 为单位)。 大多数此用法用于编译和优化,但它也可以包括其他内存用户。 不可为 Null。 |
used_memgrant_kb |
bigint | 当前通过内存授予使用(盗用)的内存总量。 不可为 Null。 |
total_memgrant_count |
bigint | 此资源池中的内存授予累计计数。 不可为 Null。 |
total_memgrant_timeout_count |
bigint | 此资源池中内存授予超时的累计计数。 不可为 Null。 |
active_memgrant_count |
int | 当前内存授予计数。 不可为 Null。 |
active_memgrant_kb |
bigint | 当前内存授予总量(以 KB 为单位)。 不可为 Null。 |
memgrant_waiter_count |
int | 内存授予过程中当前挂起的查询数。 不可为 Null。 |
max_memory_kb |
bigint | 该资源池可拥有的最大内存量(以 KB 为单位)。 这取决于当前设置和服务器状态。 不可为 Null。 |
used_memory_kb |
bigint | 此资源池已用的内存量(以 KB 为单位)。 不可为 Null。 |
target_memory_kb |
bigint | 此资源池试图获取的目标内存量(以 KB 为单位)。 这取决于当前设置和服务器状态。 不可为 Null。 |
out_of_memory_count |
bigint | 由于重置了 Resource Governor 统计信息,池中的内存分配失败次数。 不可为 Null。 |
min_cpu_percent |
int | 存在 CPU 争用时,资源池中所有请求的保证平均 CPU 带宽的当前配置。 不可为 Null。 |
max_cpu_percent |
int | 当存在 CPU 争用时,资源池中所有请求允许的最大平均 CPU 带宽的当前配置。 不可为 Null。 |
min_memory_percent |
int | 当存在内存争用时,资源池中所有请求的内存保证量的当前配置。 这不会与其他资源池共享。 不可为 Null。 |
max_memory_percent |
int | 此资源池中的请求可使用的总服务器内存百分比的当前配置。 不可为 Null。 |
cap_cpu_percent |
int | 资源池中所有请求接收的 CPU 带宽的硬上限。 将 CPU 最大带宽级别限制为指定的级别。 value 的允许范围是 1 到 100。 不可为 Null。 适用于:SQL Server 2012 (11.x) 及更高版本 |
min_iops_per_volume |
int | 此池的每个磁盘卷设置的每秒最小 I/O(IOPS)。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
max_iops_per_volume |
int | 此池的每个磁盘卷设置的最大 I/O/秒(IOPS)。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
read_io_queued_total |
int | 自资源调控器重置以来排队的读取 I/O 总数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
read_io_issued_total |
int | 自重置资源调控器统计信息以来颁发的读取 I/O 总数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
read_io_completed_total |
int | 自重置资源调控器统计信息以来已完成的读取 I/O 总数。 不可为 Null。 |
read_io_throttled_total |
int | 自重置资源调控器统计信息以来限制的读取 I/O 总数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
read_bytes_total |
bigint | 自重置 Resource Governor 统计信息以来读取的字节总数。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
read_io_stall_total_ms |
bigint | 读取 I/O 到达和完成之间的总时间(以毫秒为单位)。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
read_io_stall_queued_ms |
bigint | 读取 I/O 到达和问题之间的总时间(以毫秒为单位)。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。若要确定池的 I/O 设置是否会导致延迟,请从read_io_stall_total_ms中减去read_io_stall_queued_ms。 适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_queued_total |
int | 自资源调控器统计信息重置以来排队的总写入 I/O 数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_issued_total |
int | 自重置资源调控器统计信息以来颁发的写入 I/O 总数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_completed_total |
int | 自重置资源调控器统计信息以来已完成的总写入 I/O。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_throttled_total |
int | 自重置资源调控器统计信息以来,写入 I/O 总数受到限制。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
write_bytes_total |
bigint | 自重置 Resource Governor 统计信息以来写入的字节总数。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_stall_total_ms |
bigint | 写入 I/O 到达和完成之间的总时间(以毫秒为单位)。 不可为 Null。 适用于:SQL Server 2014 (12.x) 及更高版本 |
write_io_stall_queued_ms |
bigint | 写入 I/O 到达和问题之间的总时间(以毫秒为单位)。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。这是 I/O 资源治理引入的延迟。 适用于:SQL Server 2014 (12.x) 及更高版本 |
io_issue_violations_total |
int | I/O 问题冲突总数。 也就是说,I/O 问题的速率低于保留费率的次数。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
io_issue_delay_total_ms |
bigint | 计划问题与 I/O 的实际问题之间的总时间(以毫秒为单位)。 Nullable。 NULL 如果资源池未针对 I/O 进行治理,则为 。 也就是说,资源池MIN_IOPS_PER_VOLUME和MAX_IOPS_PER_VOLUME设置为 0。适用于:SQL Server 2014 (12.x) 及更高版本 |
io_issue_ahead_total_ms |
bigint | 仅供内部使用。 适用于:SQL Server 2016 (13.x) 及更高版本 |
reserved_io_limited_by_volume_total |
bigint | 仅供内部使用。 适用于:SQL Server 2016 (13.x) 及更高版本 |
io_issue_delay_non_throttled_total_ms |
bigint | 计划问题与非限制 I/O 的实际问题之间的总时间(以毫秒为单位)。 适用于:SQL Server 2016 (13.x) 及更高版本 |
total_cpu_delayed_ms |
bigint | 可运行的工作器生成之间的总时间(以毫秒为单位),操作系统将控制权还给数据库引擎中的另一个可运行辅助角色。 这可能是空闲辅助角色。 适用于:SQL Server 2016 (13.x) 及更高版本 |
total_cpu_active_ms |
bigint | 总活动 CPU 时间(以毫秒为单位)。 适用于:SQL Server 2016 (13.x) 及更高版本 |
total_cpu_violation_delay_ms |
bigint | CPU 冲突总延迟(以毫秒为单位)。 也就是说,低于可运行辅助角色生成之间的最小保证延迟的总 CPU 时间延迟,并且操作系统将控制权还给数据库引擎中的另一个可运行辅助角色。 适用于:SQL Server 2016 (13.x) 及更高版本 |
total_cpu_violation_sec |
bigint | CPU 冲突总数(以秒为单位)。 也就是说,发生 CPU 时间冲突时累积的总时间。 适用于:SQL Server 2016 (13.x) 及更高版本 |
total_cpu_usage_preemptive_ms |
bigint | 在抢先模式计划工作负荷组时使用的 CPU 总时间(以毫秒为单位)。 不可为 Null。 若要执行数据库引擎之外的代码(例如扩展存储过程和分布式查询),线程必须执行在非抢占计划程序的控制之外执行。 若要这样做,工作线程将切换到抢先模式。 适用于:SQL Server 2016 (13.x) 及更高版本 |
max_vcores |
十进制(5,2) | 当存在 CPU 争用时,资源池中所有请求允许的最大平均 CPU 带宽的当前配置。 以 vCore 单位表示,可能不会反映数据库、弹性池或 SQL 托管实例可用的 vCore 数或逻辑 CPU 总数。 适用范围:Azure SQL 数据库和 Azure SQL 托管实例 |
total_cpu_usage_actual_ms |
bigint | 标识为仅供参考。 不支持。 不保证以后的兼容性。 |
pdw_node_id |
int` | 此分发所在节点的标识符。 适用于:Azure Synapse Analytics、Analytics Platform System (PDW) |
注解
资源调控器工作负荷组和资源调控器资源池具有多对一映射关系。 因此,许多资源池统计信息都是派生自工作负荷组统计信息。
此动态管理视图显示了内存中配置。 若要查看存储的配置元数据,请使用 sys.resource_governor_resource_pools
目录视图。
权限
需要 VIEW SERVER STATE
权限。
SQL Server 2022 及更高版本的权限
要求具有对服务器的 VIEW SERVER PERFORMANCE STATE
权限。