查询历史记录系统表参考
本文包含有关查询历史记录系统表的信息,包括表架构的大纲。
重要
若要访问查询历史记录系统表,必须启用 query
架构。 有关启用系统架构的说明,请参阅启用系统表架构。
表路径:此系统表位于 system.query.history
.
使用查询历史记录表
查询历史记录表包括使用 SQL 仓库运行的每个 SQL 语句的记录。 该表包括来自访问表的同一区域中所有工作区的帐户范围记录。
默认情况下,只有管理员有权访问系统表。 如果要与用户或组共享表数据,Databricks 建议为每个用户或组创建动态视图。 请参阅创建动态视图。
查询历史记录系统表架构
查询历史记录表使用以下架构:
列名称 | 数据类型 | 说明 | 示例 |
---|---|---|---|
account_id |
string | 帐户的 ID。 | 11e22ba4-87b9-4cc2 -9770-d10b894b7118 |
workspace_id |
string | 运行查询的工作区的 ID。 | 1234567890123456 |
statement_id |
string | 唯一标识语句执行的 ID。 可以使用此 ID 在“查询历史记录”UI 中查找语句执行。 | 7a99b43c-b46c-432b -b0a7-814217701909 |
session_id |
string | Spark 会话 ID。 | 01234567-cr06-a2mp -t0nd-a14ecfb5a9c2 |
execution_status |
string | 语句终止状态。 可能的值为: - FINISHED :执行成功- FAILED :执行失败,并显示随附错误消息中所述失败的原因- CANCELED :执行已取消 |
FINISHED |
compute |
struct | 一个结构,表示用于运行语句的计算资源的类型,以及资源的 ID(如适用)。 type 值将是 WAREHOUSE 或 SERVERLESS_COMPUTE 。 |
{ type: WAREHOUSE, cluster_id: NULL, warehouse_id: ec58ee3772e8d305 } |
executed_by_user_id |
string | 运行语句的用户的 ID。 | 2967555311742259 |
executed_by |
string | 运行该语句的用户的电子邮件地址或用户名。 | example@databricks.com |
statement_text |
string | SQL 语句的文本。 如果已配置客户管理的密钥,则 statement_text 为空。 |
SELECT 1 |
statement_type |
string | 语句类型。 例如 ALTER 、COPY 和 INSERT 。 |
SELECT |
error_message |
string | 描述错误条件的消息。 如果已配置客户管理的密钥,则 error_message 为空。 |
[INSUFFICIENT_PERMISSIONS] Insufficient privileges: User does not have permission SELECT on table 'default.nyctaxi_trips'. |
client_application |
string | 运行语句的客户端应用程序。 例如:Databricks SQL 编辑器、Tableau 和 Power BI。 此字段派生自客户端应用程序提供的信息。 虽然值预计在一段时间内保持静态,但无法保证这一点。 | Databricks SQL Editor |
client_driver |
string | 用于连接到 Azure Databricks 以运行语句的连接器。 例如:Databricks SQL Driver for Go、Databricks ODBC 驱动程序、Databricks JDBC 驱动程序。 | Databricks JDBC Driver |
total_duration_ms |
bigint | 语句的总执行时间(以毫秒为单位)(不包括结果提取时间)。 | 1 |
waiting_for_compute_duration_ms |
bigint | 等待预配计算资源的时间(以毫秒为单位)。 | 1 |
waiting_at_capacity_duration_ms |
bigint | 等待队列中可用计算容量的时间(以毫秒为单位)。 | 1 |
execution_duration_ms |
bigint | 执行查询所花费的时间(以毫秒为单位)。 | 1 |
compilation_duration_ms |
bigint | 加载元数据和优化语句所花费的时间(以毫秒为单位)。 | 1 |
total_task_duration_ms |
bigint | 所有任务工期的总和(以毫秒为单位)。 这个时间表示跨所有节点的所有核心运行查询所花费的总时间。 如果并行执行多个任务,则持续时间可能明显长于挂钟持续时间。 如果任务等待可用节点,则持续时间可能比挂钟持续时间要短。 | 1 |
result_fetch_duration_ms |
bigint | 执行完成后提取查询结果所花费的时间(以毫秒为单位)。 | 1 |
start_time |
timestamp | Databricks 收到请求的时间。 时区信息记录在值的末尾,其中 +00:00 表示 UTC。 |
2022-12-05T00:00:00.000+0000 |
end_time |
timestamp | 语句执行结束的时间,不包括结果提取时间。 时区信息记录在值的末尾,其中 +00:00 表示 UTC。 |
2022-12-05T00:00:00.000+00:00 |
update_time |
timestamp | 上次收到进度更新的语句的时间。 时区信息记录在值的末尾,其中 +00:00 表示 UTC。 |
2022-12-05T00:00:00.000+00:00 |
read_partitions |
bigint | 修剪后读取的分区数。 | 1 |
pruned_files |
bigint | 已修剪的文件数。 | 1 |
read_files |
bigint | 修剪后读取的文件数。 | 1 |
read_rows |
bigint | 语句读取的总行数。 | 1 |
produced_rows |
bigint | 语句返回的总行数。 | 1 |
read_bytes |
bigint | 语句读取的数据的总大小(以字节为单位)。 | 1 |
read_io_cache_percent |
int | 从 IO 缓存中读取的永久性数据的字节百分比。 | 50 |
from_result_cache |
boolean | TRUE 指示语句结果是从缓存中提取的。 |
TRUE |
spilled_local_bytes |
bigint | 执行语句时临时写入磁盘的数据大小(以字节为单位)。 | 1 |
written_bytes |
bigint | 写入云对象存储的持久性数据的大小(以字节为单位)。 | 1 |
shuffle_read_bytes |
bigint | 通过网络发送的数据总量(以字节为单位)。 | 1 |
query_source |
struct | 包含键值对的结构,表示参与执行此语句的一个或多个 Databricks 实体,如作业、笔记本或仪表板。 此字段仅记录 Databricks 实体。 | { job_info: { job_id: 64361233243479 job_run_id: 887406461287882 job_task_key: “job_task_1” job_task_run_id: 110378410199121 } |
executed_as |
string | 使用其特权运行语句的用户或服务主体的名称。 | example@databricks.com |
executed_as_user_id |
string | 使用其特权运行语句的用户或服务主体的 ID。 | 2967555311742259 |
查看记录的查询配置文件
若要根据查询历史记录表中的记录导航到查询的查询配置文件,请执行以下操作:
- 确定感兴趣的记录,然后复制记录的
statement_id
。 - 引用记录的
workspace_id
,确保登录到与记录相同的工作区。 - 单击工作区边栏中的 “查询历史记录”。
- 在“语句 ID”字段中,将
statement_id
粘贴到记录上。 - 单击查询的名称。 此时将显示查询指标的概述。
- 单击“查看查询配置文件”。