sys.dm_pdw_exec_requests (Transact-SQL)
适用于:Azure Synapse Analytics分析平台系统 (PDW)
保存有关 Azure Synapse Analytics 专用 SQL 池和分析平台系统(PDW)中当前或最近处于活动状态的所有请求的信息。 它为每个请求/查询列出一行。
注意
Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。 对于无服务器 SQL 池,请使用 sys.dm_exec_requests。
列名称 | 数据类型 | 说明 | 范围 |
---|---|---|---|
request_id |
nvarchar(32) | 此视图的键。 与请求关联的唯一数值 ID。 | 在系统中的所有请求中唯一。 |
session_id |
nvarchar(32) | 与运行此查询的会话关联的唯一数值 ID。 请参阅 sys.dm_pdw_exec_sessions。 | |
status |
nvarchar(32) | 请求的当前状态。 |
Running 、、Suspended Completed 、Cancelled . Failed |
submit_time |
datetime | 请求提交执行的时间。 | 有效 日期/时间 小于或等于当前时间和 start_time 。 |
start_time |
datetime | 启动请求执行的时间。 |
NULL 用于排队请求;否则,有效 日期/时间 小于或等于当前时间。 |
end_compile_time |
datetime | 引擎完成编译请求的时间。 |
NULL 对于尚未编译的请求;否则,有效 日期/时间 小于 start_time 或等于当前时间。 |
end_time |
datetime | 请求执行完成、失败或取消的时间。 |
NULL 用于排队或活动请求;否则,有效的 日期/时间 小于或等于当前时间。 |
total_elapsed_time |
int | 自请求启动以来的执行时间(以毫秒为单位)。 | 介于 0 和两者之间的submit_time 区别。end_time 如果 total_elapsed_time 超出整数的最大值, total_elapsed_time 则继续为最大值。 此条件将生成警告“已超出最大值”。最大值(以毫秒为单位)与 24.8 天相同。 |
label |
nvarchar(255) | 与某些 SELECT 查询语句关联的可选标签字符串。 |
包含 a-z , A-Z ,0-9 的任何_ 字符串。 |
error_id |
nvarchar(36) | 与此步骤关联的错误的唯一 ID(如果有)。 |
NULL 如果未发生错误,则为 。
request_id 可以与request_id sys.dm_pdw_errors匹配,以查看该特定request_id 的所有列出的错误。 |
database_id |
int | 显式上下文使用的数据库标识符(例如, USE DB_X )。 |
请参阅 database_id sys.databases。 |
command |
nvarchar(4000) | 保存用户提交的请求全文。 | 任何有效的查询或请求文本。 超过 4,000 字节的查询将被截断。 |
resource_class |
nvarchar(20) | 用于此请求的工作负荷组。 | 静态资源类staticrc10 staticrc20 staticrc30 staticrc40 staticrc50 staticrc60 staticrc70 staticrc80 动态资源类 SmallRC MediumRC LargeRC XLargeRC |
importance |
nvarchar(128) | 执行请求的重要性设置。 这是此工作负荷组中请求相对于共享资源的工作负荷组的相对重要性。 分类器中指定的重要性会替代工作负荷组重要性设置。 适用对象:Azure Synapse Analytics |
NULL low below_normal normal (默认值)above_normal high |
group_name |
sysname | 对于使用资源的请求, group_name 请求正在其下运行的工作负荷组的名称。 如果请求未利用资源, group_name 则为 NULL 。适用对象:Azure Synapse Analytics |
|
classifier_name |
sysname | 对于使用资源的请求,用于分配资源和重要性的分类器的名称。 | |
resource_allocation_percentage |
十进制(5,2) | 分配给请求的资源的百分比。 适用对象:Azure Synapse Analytics |
|
result_cache_hit |
int | 详细说明已完成的查询是否使用了结果集缓存。 适用对象:Azure Synapse Analytics |
1 = 结果集缓存命中数 0 = 结果集缓存未命中数 NULL = 查询不是 SELECT 查询。负整数值 = 未使用结果集缓存的原因。 有关详细信息,请参阅备注部分。 |
client_correlation_id |
nvarchar(255) | 客户端会话的可选用户定义名称。 若要为会话设置,请调用 sp_set_session_context 'client_correlation_id', <CorrelationIDName> 。 可以使用 . 检索其值 SELECT SESSION_CONTEXT (N'client_correlation_id') 。 有关详细信息,请参阅 sp_set_session_context。 |
|
command2 |
nvarchar(max) | 保存用户提交的请求全文。 保存长度超过 4,000 个字符的查询。 | 任何有效的查询或请求文本。
NULL = 长度或更少长度为 4000 个字符的查询。 对于这些查询,可以在列下 command 找到全文。 |
注解
有关此视图保留的最大行的信息,请参阅容量限制文章中的“元数据”部分。
列中的负整数值 result_cache_hit
是无法缓存查询结果集的所有已应用原因的位图值。 此列可以是 |(按位或) 以下一个或多个值的乘积。 例如, -36
可能是两个 原因的按位 OR : -0x04
(-4
) 和 -0x20
(-32
)。
值 | 值(采用十进制) | 说明 |
---|---|---|
1 |
1 |
结果集缓存命中数 |
0x00 |
0 |
结果集缓存未命中 |
-0x01 |
-1 |
在数据库上禁用结果集缓存。 |
-0x02 |
-2 |
会话上禁用了结果集缓存。 |
-0x04 |
-4 |
由于查询没有数据源,因此禁用了结果集缓存。 |
-0x08 |
-8 |
由于行级别安全谓词,结果集缓存被禁用。 |
-0x10 |
-16 |
由于查询中使用系统表、临时表或外部表,因此禁用了结果集缓存。 |
-0x20 |
-32 |
由于查询包含运行时常量、用户定义的函数或不确定函数,因此禁用了结果集缓存。 |
-0x40 |
-64 |
由于估计的结果集大小大于 10 GB,因此禁用了结果集缓存。 |
-0x80 |
-128 |
由于结果集包含大小较大(大于 64 KB)的行,因此禁用了结果集缓存。 |
-0x100 |
-256 |
由于使用了精细动态数据掩码,因此禁用了结果集缓存。 |
权限
需要 VIEW DATABASE STATE
权限。
安全性
sys.dm_pdw_exec_requests
不会根据特定于数据库的权限筛选查询结果。 具有权限的 VIEW DATABASE STATE
登录名可以获取所有数据库的结果查询结果。
警告
攻击者可以通过 sys.dm_pdw_exec_requests
仅具有 VIEW DATABASE STATE
权限和不具有特定于数据库的权限来检索有关特定数据库对象的信息。