类别:

Information Schema表函数

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>'] ])
Copy

实参

所有实参均为可选。

DATE_RANGE_START => constant_expr. DATE_RANGE_END => constant_expr

计费窗口的日期/时间范围:

  • 如果未指定结束日期,则会将 CURRENT_DATE 用作范围的结束日期。

  • 如果未指定开始日期,则范围从 DATE_RANGE_END 开始前的 10 分钟开始(即,默认显示前 10 分钟的计费历史记录)。例如,如果 DATE_RANGE_ENDCURRENT_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'));
Copy

与上一个示例相同,但检索过去 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'));
Copy

与第一个示例相同,但检索过去 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'));
Copy

检索过去 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'));
Copy

检索过去 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'));
Copy
语言: 中文