QUERY_HISTORY 视图 (Account Usage):列的变更和新列

注意

此行为变更在 2024_02 捆绑包中。

有关捆绑包的当前状态,请参阅 捆绑包历史记录

QUERY_HISTORY 视图 包括以下 新列对列的变更

QUERY_HISTORY 视图中的新列

启用此行为变更捆绑包后,Account Usage QUERY_HISTORY 视图包括以下新列:

列名称

数据类型

描述

SECONDARY_ROLE_STATS

VARCHAR

JSON 格式的字符串包含有关查询中计算的次要角色的三个字段:取决于会话的次要角色或 ALL 列表、次要角色数量的计数以及每个次要角色的内部/系统生成的 ID。IDs 的计数和数量最多为 50。

ROWS_WRITTEN_TO_RESULT

NUMBER

写入结果对象的行数。对于 CREATE TABLE AS SELECT (CTAS) 和所有 DML 操作,此结果为 1。ROWS_INSERTED、ROWS_UPDATED 和 ROWS_DELETED 列中的值反映实际插入、更新或删除的行数。

有关更多信息,请参阅 ROWS_PRODUCED 列已弃用

ROWS_INSERTED

NUMBER

查询插入的行数。

QUERY_RETRY_TIME

NUMBER

由可操作错误导致的查询重试的总执行时间(以毫秒为单位)。有关更多信息,请参阅 查询重试列

QUERY_RETRY_CAUSE

VARIANT

可操作错误的错误消息数组。此数组包含每次查询重试的一条错误消息。如果没有查询重试,则数组为空。有关更多信息,请参阅 查询重试列

FAULT_HANDLING_TIME

NUMBER

由于 可操作错误导致的查询重试的总执行时间(以毫秒为单位)。有关更多信息,请参阅 查询重试列

这些列将添加为视图中的最后(最后侧)一列。

有关更多信息,另请参阅 Information Schema:QUERY_HISTORY、QUERY_HISTORY_BY_* 函数输出中的新列

查询重试列

查询可能需要重试一次或多次才能成功完成。可能有多种原因导致查询重试。其中一些原因是 可操作的,也就是说,用户可以进行更改以减少或消除对特定查询的查询重试次数。例如,如果由于内存不足错误而重试查询,则修改仓库设置可能会解决问题。

某些查询重试是由不可操作的容错能力引起的。也就是说,用户无法进行任何更改来防止查询重试。例如,网络中断可能会导致查询重试。在这种情况下,对查询或执行查询的仓库进行任何更改都无法阻止查询重试。

QUERY_RETRY_TIME、QUERY_RETRY_CAUSE 和 FAULT_HANDLING_TIME 列可以帮助您优化重试的查询,更好地了解查询性能的波动。

ROWS_PRODUCED 列已弃用

ROWS_PRODUCED 列将在未来的版本中弃用。ROWS_PRODUCED 列中的值并不总是反映受查询影响的逻辑行数。例如,ROWS_PRODUCED 列中的值可能包括由于重写微分区而删除的行,并且数量可能大于受影响的实际行数。Snowflake 建议改用 ROWS_INSERTED、ROWS_UPDATED、ROWS_WRITTEN_TO、RESULTS 或 ROWS_DELETED 列。

对 QUERY_HISTORY 视图中列的变更

Account Usage QUERY_HISTORY 视图 中包括以下列:

  • BYTES_WRITTEN_TO_RESULT

  • ROWS_INSERTED

这些列中特定类型查询的值如下所示:

变更前:

BYTES_WRITTEN_TO_RESULT

小查询为 0

ROWS_INSERTED:

CREATE TABLE AS SELECT (CTAS) 查询为 0

变更后:

BYTES_WRITTEN_TO_RESULT

写入小查询结果对象的字节数。

ROWS_INSERTED:

为 CREATE TABLE AS SELECT (CTAS) 查询插入的行数。

有关更多信息,另请参阅 Information Schema:QUERY_HISTORY、QUERY_HISTORY_BY_* 函数输出中的新列

参考:1431、1524、1540

语言: 中文