QUERY_HISTORY 视图 (Account Usage):列的变更和新列¶
QUERY_HISTORY 视图 包括以下 新列 和 对列的变更:
QUERY_HISTORY 视图中的新列¶
启用此行为变更捆绑包后,Account Usage QUERY_HISTORY 视图包括以下新列:
列名称 |
数据类型 |
描述 |
---|---|---|
SECONDARY_ROLE_STATS |
VARCHAR |
JSON 格式的字符串包含有关查询中计算的次要角色的三个字段:取决于会话的次要角色或 |
ROWS_WRITTEN_TO_RESULT |
NUMBER |
写入结果对象的行数。对于 CREATE TABLE AS SELECT (CTAS) 和所有 DML 操作,此结果为 有关更多信息,请参阅 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