查询管理

.show 查询

.showqueries 命令返回已达到最终状态的查询列表,并且调用该命令的用户有权查看:

语法

.show queries

  • 返回包含先前运行的查询及其完成统计信息的表。 可以使用 KQL 查询来浏览结果。
  • 注意:查询文本在达到 64KB 后将被截断。

输出

输出架构如下所示:

ColumnName ColumnType 说明
ClientActivityId string 请求的客户端 ID
文本 string 查询文本,达到 64 KB 后将被截断
数据库 string 对其执行了查询的数据库的名称
StartedOn datetime 查询执行开始时间戳
LastUpdatedOn datetime 上次状态更新时间戳
持续时间 timespan 服务器端查询持续时间
State 字符串 完成状态
RootActivityId GUID 服务器端请求 ID
User string 运行查询的用户 ID
FailureReason string 失败原因。 如果查询成功,则此字段为空。
TotalCpu timespan 查询消耗的 CPU 总量
CacheStatistics 动态 数据缓存使用量统计信息
应用程序 string 用于运行查询的应用程序的名称
MemoryPeak long 峰值内存统计信息
ScannedExtentsStatistics 动态 已扫描分片(盘区)的统计信息
主体 string 用于运行查询的用户或应用程序的 AAD-ID
ClientRequestProperties 动态 客户端请求属性
ResultSetStatistics 动态 描述返回的数据集的统计信息
WorkloadGroup 字符串 与查询关联的工作负载组的名称

示例

.show queries 
| project Text, Duration
| take 3
文本 持续时间
T |count 00:00:00
T | summarize count() by column1 00:00:00.0312564
T | take 10 00:00:00.0155632

.show 正在运行的查询

.showrunningqueries 命令返回用户或另一个用户或所有用户当前正在执行的查询的列表。

语法

.show running queries
  • 返回调用用户当前正在执行的查询(需要读取访问权限)。

.cancel 查询

.cancelquery 命令会开始尽力尝试取消特定正在运行的查询。

  • 集群管理员可以取消任何正在运行的查询。
  • 数据库管理员可以取消对其具有管理员访问权限的数据库调用的任何正在运行的查询。
  • 所有主体都可以取消他们启动的正在运行的查询。

语法

.cancelqueryClientRequestId [with(reason=ReasonPhrase)]

  • ClientRequestId 是正在运行的查询的 ClientRequestId 属性的值,作为 string 文本。

  • ReasonPhrase:如果已指定,则为描述取消正在运行的查询的原因的 string 文本。 如果查询成功取消,则此信息将包含在查询结果中。

示例

.cancel query "KE.RunQuery;8f70e9ab-958f-4955-99df-d2a288b32b2c"