sys.dm_resource_governor_resource_pools_history_ex (Transact-SQL)
适用于: Azure SQL 数据库 Azure SQL 托管实例
每行表示Azure SQL 数据库和Azure SQL 托管实例中资源池统计信息的定期快照。 数据库引擎启动时,每隔几秒钟创建一次快照。 当前快照和上一快照之间的间隔可能会有所不同,并在 duration_ms
列中提供。 返回最新的可用快照,每个资源池最多 128 个快照。
重要
此 DMV 显示的大部分数据用于内部使用,并可能会更改。
列名称 | 数据类型 | 描述 |
---|---|---|
pool_id |
int | 资源池的 ID。 不可为 Null。 |
name |
sysname | 资源池的名称。 不可为 Null。 |
snapshot_time |
datetime2 | 创建的资源池统计信息快照的日期/时间。 |
duration_ms |
int | 当前快照和上一快照之间的持续时间。 |
statistics_start_time |
datetime2 | 为该池重置统计信息的时间。 不可为 Null。 |
active_session_count |
int | 当前快照中的活动会话总数。 |
active_worker_count |
int | 当前快照中的辅助角色总数。 |
delta_cpu_usage_ms |
int | 自上次快照以来的 CPU 使用率(以毫秒为单位)。 不可为 Null。 |
delta_cpu_usage_preemptive_ms |
int | 自上次快照以来,先发制人 Win32 调用不受 SQL CPU RG 控制。 |
used_data_space_kb |
bigint | 与用户池关联的用户数据库中使用的总空间。 |
allocated_disk_space_kb |
bigint | 与用户池关联的用户数据库的总数据文件大小。 |
target_memory_kb |
bigint | 此资源池试图获取的目标内存量(以 KB 为单位)。 这取决于当前设置和服务器状态。 不可为 Null。 |
used_memory_kb |
bigint | 此资源池已用的内存量(以 KB 为单位)。 不可为 Null。 |
cache_memory_kb |
bigint | 当前的缓存内存总用量(以 KB 为单位)。 不可为 Null。 |
compile_memory_kb |
bigint | 当前总的内存盗用量(以 KB 为单位)。 大多数此用法用于编译和优化,但它也可以包括其他内存用户。 不可为 Null。 |
active_memgrant_count |
bigint | 当前内存授予计数。 不可为 Null。 |
active_memgrant_kb |
bigint | 当前内存授予总量(以 KB 为单位)。 不可为 Null。 |
used_memgrant_kb |
bigint | 当前通过内存授予使用(盗用)的内存总量。 不可为 Null。 |
delta_memgrant_timeout_count |
int | 此时间段内此资源池中的内存授予超时计数。 不可为 Null。 |
delta_memgrant_waiter_count |
int | 内存授予过程中当前挂起的查询数。 不可为 Null。 |
delta_out_of_memory_count |
int | 自上次快照以来池中失败的内存分配数。 不可为 Null。 |
delta_read_io_queued |
int | 自上次快照以来排队的读取 IO 总数。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_read_io_issued |
int | 自上次快照以来颁发的读取 IO 总数。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_read_io_completed |
int | 自上次快照以来已完成的读取 IO 总数。 不可为 Null。 |
delta_read_io_throttled |
int | 自快照以来限制的读取 IO 总数。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_read_bytes |
bigint | 自上次快照以来读取的总字节数。 不可为 Null。 |
delta_read_io_stall_ms |
int | 自上次快照以来读取 IO 到达和完成之间的总时间(以毫秒为单位)。 不可为 Null。 |
delta_read_io_stall_queued_ms |
int | 自上次快照以来读取 IO 到达和问题之间的总时间(以毫秒为单位)。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 非零 delta_read_io_stall_queued_ms 意味着 IO 因资源治理而延迟。 |
delta_write_io_queued |
int | 自上次快照以来排队的总写入 IO 数。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_write_io_issued |
int | 自上次快照以来颁发的写入 IO 总数。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_write_io_completed |
int | 自上次快照以来完成的总写入 IO 数。 不可为 Null。 |
delta_write_io_throttled |
int | 自上次快照以来限制的总写入 IO 数。 不可为 Null。 |
delta_write_bytes |
bigint | 自上次快照以来写入的字节总数。 不可为 Null。 |
delta_write_io_stall_ms |
int | 自上次快照以来写入 IO 到达和完成之间的总时间(以毫秒为单位)。 不可为 Null。 |
delta_write_io_stall_queued_ms |
int | 写入 IO 到达和自上次快照以来的问题之间的总时间(以毫秒为单位)。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
delta_io_issue_delay_ms |
int | 自上次快照以来的计划问题与 IO 的实际问题之间的总时间(以毫秒为单位)。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
max_iops_per_volume |
int | 此池的每个磁盘卷设置的最大 IO/秒(IOPS)。 Nullable。 如果资源池未针对 IO 进行治理,则为 Null。 |
max_memory_kb |
bigint | 该资源池可拥有的最大内存量(以 KB 为单位)。 这取决于当前设置和服务器状态。 不可为 Null。 |
max_log_rate_kb |
bigint | 资源池级别的最大日志速率(每秒千字节)。 |
max_data_space_kb |
bigint | 此弹性池的最大弹性池存储限制设置(以 KB 为单位)。 |
max_session |
int | 池的会话限制。 |
max_worker |
int | 池的工作器限制。 |
min_cpu_percent |
int | 存在 CPU 争用时,资源池中所有请求的保证平均 CPU 带宽的当前配置。 不可为 Null。 |
max_cpu_percent |
int | 当存在 CPU 争用时,资源池中所有请求允许的最大平均 CPU 带宽的当前配置。 不可为 Null。 |
cap_cpu_percent |
int | 资源池中所有请求接收的 CPU 带宽的硬上限。 将 CPU 最大带宽级别限制为指定的级别。 value 的允许范围是 1 到 100。 不可为 Null。 |
min_vcores |
十进制(5,2) | 存在 CPU 争用时,资源池中所有请求的保证平均 CPU 带宽的当前配置。 以 vCore 为单位。 |
max_vcores |
十进制(5,2) | 当存在 CPU 争用时,资源池中所有请求允许的最大平均 CPU 带宽的当前配置。 以 vCore 单位表示,可能不会反映数据库、弹性池或 SQL 托管实例可用的 vCore 数或逻辑 CPU 总数。 |
cap_vcores |
十进制(5,2) | 资源池中所有请求接收的 CPU 带宽的硬上限。 以 vCore 为单位。 |
instance_cpu_count |
int | 为实例配置的 CPU 数。 |
instance_cpu_percent |
十进制(5,2) | 为实例配置的 CPU 百分比。 |
instance_vcores |
十进制(5,2) | 为实例配置的 vCore 数。 |
delta_log_bytes_used |
十进制(5,2) | 自上次快照以来池级别的总日志生成量(以字节为单位)。 |
avg_login_rate_percent |
十进制(5,2) | 与登录限制相比,自上次快照以来的登录次数。 |
delta_vcores_used |
十进制(5,2) | 自上次快照以来 vCore 计数的计算利用率。 |
cap_vcores_used_percent |
十进制(5,2) | 以池的限制百分比形式表示的平均计算使用率。 |
instance_vcores_used_percent |
十进制(5,2) | SQL 实例限制百分比的平均计算利用率。 |
avg_data_io_percent |
十进制(5,2) | 以基于池的限制的百分比形式表示的平均 I/O 使用率。 |
avg_log_write_percent |
十进制(5,2) | 以池的限制百分比形式表示的平均写入资源使用率。 |
avg_storage_percent |
十进制(5,2) | 以池的存储限制百分比形式表示的平均存储使用率。 |
avg_allocated_storage_percent |
十进制(5,2) | 弹性池中所有数据库分配的数据空间百分比。 这是分配给弹性池的数据最大大小的数据空间的比率。 有关详细信息,请访问SQL 数据库中的文件空间管理。 |
max_worker_percent |
十进制(5,2) | 以基于池的限制的百分比形式表示的最大并发工作线程(请求)数量。 |
max_session_percent |
十进制(5,2) | 以基于池的限制的百分比形式表示的最大并发会话(请求)数量。 |
active_outbound_connection_worker_count |
int | 当前快照中的出站连接辅助角色总数。 |
max_outbound_connection_worker |
int | 池的出站连接辅助角色限制。 |
max_outbound_connection_worker_percent |
十进制(5,2) | 基于池限制的最大并发出站连接辅助角色(请求)百分比。 |
权限
此视图需要 VIEW SERVER STATE
权限。
注解
用户可以访问此动态管理视图,以监视Azure SQL 数据库实例的用户工作负荷池和系统内部池的近实时资源消耗。
示例
以下示例按用户池返回每个快照的最大日志速率数据和消耗量:
SELECT snapshot_time,
name,
max_log_rate_kb,
delta_log_bytes_used
FROM sys.dm_resource_governor_resource_pools_history_ex
WHERE name LIKE 'SloSharedPool1'
ORDER BY snapshot_time DESC;