AUTO_REFRESH_REGISTRATION_HISTORY¶
此表函数可用于查询在指定对象的元数据中注册的数据文件的历史记录,以及为这些操作计费的 credit。表函数返回整个 Snowflake 账户在指定日期范围内的计费历史记录。
备注
此函数返回过去 14 天内的计费活动。
语法¶
AUTO_REFRESH_REGISTRATION_HISTORY(
[ DATE_RANGE_START => <constant_expr> ]
[, DATE_RANGE_END => <constant_expr> ]
[, OBJECT_TYPE => '<string>' [, OBJECT_NAME => '<string>'] ])
实参¶
所有实参均为可选。
DATE_RANGE_START => constant_expr
、.DATE_RANGE_END => constant_expr
计费窗口的日期/时间范围:
如果未指定结束日期,则会将 CURRENT_DATE 用作范围的结束日期。
如果未指定开始日期,则范围从
DATE_RANGE_END
开始前的 10 分钟开始(即,默认显示前 10 分钟的计费历史记录)。例如,如果DATE_RANGE_END
是 CURRENT_DATE,则默认DATE_RANGE_START
是 前一天 11:50 PM。
历史记录以 5 分钟、1 小时或 24 小时为增量显示(取决于指定范围的长度)。
OBJECT_TYPE => string
要进行 Credit 计费的对象类型。支持以下值:
DIRECTORY_TABLE
为自动元数据刷新配置的目录表。
EXTERNAL_TABLE
为自动元数据刷新配置的外部表。
OBJECT_NAME => string
用于指定 Credit 计费对象的名称的字符串。
使用说明¶
仅为 ACCOUNTADMIN 角色或任何已明确授予 MONITOR USAGE 全局权限的角色返回结果。
当调用 Information Schema 表函数时,会话必须具有正在使用的 INFORMATION_SCHEMA 架构,或者 函数名称必须受到完全限定。有关更多详细信息,请参阅 Snowflake Information Schema。
输出¶
该函数返回以下列:
列名称 |
数据类型 |
描述 |
---|---|---|
START_TIME |
TIMESTAMP_LTZ |
指定计费窗口的开始时间。 |
END_TIME |
TIMESTAMP_LTZ |
指定计费窗口的结束时间。 |
OBJECT_NAME |
TEXT |
Credit 计费对象的名称。 |
OBJECT_TYPE |
TEXT |
要进行 Credit 计费的对象类型。 |
CREDITS_USED |
TEXT |
在 START_TIME 和 END_TIME 窗口期间,在指定对象或对象类型的元数据中注册的数据文件的计费 Credit。 |
FILES_REGISTERED |
NUMBER |
在 START_TIME 和 END_TIME 窗口期间注册的文件数。 |
示例¶
请注意,本主题中的所有示例都引用外部表元数据。要检索其他对象类型的类似历史记录,请编辑 OBJECT_TYPE => string
查询中的值。
检索账户中为自动元数据刷新配置的所有外部表的计费历史记录。查询检索 30 分钟范围内的历史记录,以 5 分钟为周期:
select * from table(information_schema.auto_refresh_registration_history( date_range_start=>to_timestamp_tz('2021-06-17 12:00:00.000 -0700'), date_range_end=>to_timestamp_tz('2021-06-17 12:30:00.000 -0700'), object_type=>'external_table'));
与上一个示例相同,但检索过去 14 天的计费历史记录,以 1 天为周期:
select * from table(information_schema.auto_refresh_registration_history( date_range_start=>dateadd('day',-14,current_date()), date_range_end=>current_date(), object_type=>'external_table'));
与第一个示例相同,但检索过去 14 天的计费历史记录,以 1 天为周期:
select * from table(information_schema.auto_refresh_registration_history( date_range_start=>dateadd('day',-14,current_date()), date_range_end=>current_date(), object_type=>'external_table'));
检索过去 12 小时内会话的活动架构中名为 myexttable
的外部表的计费历史记录,以 1 小时为周期:
select * from table(information_schema.auto_refresh_registration_history( date_range_start=>dateadd('hour',-12,current_timestamp()), object_type=>'external_table', object_name=>'myexttable'));
检索过去 12 小时内 mydb.myschema
架构中名为 myexttable
的外部表的计费历史记录,以 1 小时为周期:
select * from table(information_schema.auto_refresh_registration_history( date_range_start=>dateadd('hour',-12,current_timestamp()), object_type=>'external_table', object_name=>'mydb.myschema.myexttable'));