DYNAMIC_TABLE_REFRESH_HISTORY 视图¶
此 Account Usage 视图显示动态表刷新历史记录的信息。
- 另请参阅:
DYNAMIC_TABLE_REFRESH_HISTORY (Information Schema)
列¶
列名称 |
数据类型 |
描述 |
---|---|---|
NAME |
VARCHAR |
动态表的名称。 |
SCHEMA_NAME |
VARCHAR |
包含动态表的架构的名称。 |
DATABASE_NAME |
VARCHAR |
包含动态表的数据库的名称。 |
ID |
NUMBER |
Snowflake 为动态表生成的内部标识符。 |
SCHEMA_ID |
NUMBER |
Snowflake 为包含动态表的架构生成的内部标识符。 |
DATABASE_ID |
NUMBER |
Snowflake 为包含动态表的数据库生成的内部标识符。 |
STATE |
VARCHAR |
动态表的刷新状态。这可能是以下其中一项:. – EXECUTING:正在刷新。. – SUCCEEDED:刷新成功完成。. – FAILED:刷新在执行期间失败。. – CANCELLED:刷新在执行前取消。. – UPSTREAM_FAILED:由于上游刷新失败,未执行刷新。 |
STATE_CODE |
VARCHAR |
表示刷新的当前状态的代码。 |
STATE_MESSAGE |
VARCHAR |
刷新的当前状态的说明。 |
QUERY_ID |
VARCHAR |
为动态表生成结果的 SQL 语句的 ID。 |
DATA_TIMESTAMP |
TIMESTAMP_LTZ |
评估刷新时的事务时间戳。(这可能略早于刷新的实际时间。)动态表目前包含在该时间戳之前到达的基本对象中的所有数据。 |
REFRESH_START_TIME |
TIMESTAMP_LTZ |
刷新作业开始的时间。 |
REFRESH_END_TIME |
TIMESTAMP_LTZ |
刷新完成的时间。 |
COMPLETION_TARGET |
TIMESTAMP_LTZ |
为了保持动态表的滞后时间不超过 TARGET_LAG 参数,此次刷新应在此时间点前完成。等于最后刷新的 DATA_TIMESTAMP + TARGET_LAG。 |
QUALIFIED_NAME |
TEXT |
动态表完全限定名称,与动态表图形中显示的名称一致。利用 DYNAMIC_TABLE_GRAPH_HISTORY 输出,您可以使用它来联接输出。 |
LAST_COMPLETED_DEPENDENCY |
OBJECT |
包含以下属性:. – |
STATISTICS |
OBJECT |
包含以下属性:. – |
REFRESH_ACTION |
TEXT |
其中之一:. – NO_DATA – 基础表中没有新数据。不适用于新建动态表的初始刷新,无论基础表是否有数据。. – REINITIALIZE – 克隆期间更改了基础表或刷新了克隆动态表的源表。. – FULL – 完全刷新,因为动态表包含不可增量的查询元素(请参阅 SHOW DYNAMIC TABLE refresh_mode_reason),或者因为完全刷新比增量刷新便宜。. – INCREMENTAL – 正常增量刷新。 |
REFRESH_TRIGGER |
TEXT |
其中之一:. – SCHEDULED – 正常后台刷新以满足目标滞后或下游目标滞后。. – MANUAL - 用户/任务使用 ALTER DYNAMIC TABLE <name> REFRESH . – CREATION – 在创建 DDL 语句期间执行的刷新,由创建动态表或任何使用者动态表触发。 |
TARGET_LAG |
TEXT |
描述刷新时动态表的目标滞后值。 |
GRAPH_HISTORY_VALID_FROM |
TIMESTAMP_NTZ |
对 DYNAMIC_TABLE_GRAPH_HISTORY 表函数发生刷新时的 VALID_FROM 时间戳进行编码,以明确特定刷新对应的是动态表的哪个版本。如果尚未创建相应的动态表,该值也可以是 NULL。 |
使用说明¶
视图的延迟时间最长可达 3 小时。
要查询该视图,请使用已获得 SNOWFLAKE、USAGE_VIEWER 授权的角色。数据库角色。
示例¶
查找过去一周内刷新失败的动态表。
SELECT data_timestamp, database_name, schema_name, name, state, state_message, query_id FROM snowflake.account_usage.dynamic_table_refresh_history WHERE state = 'FAILED' AND data_timestamp >= dateadd(WEEK, -1, current_date()) ORDER BY data_timestamp DESC LIMIT 10;