雪花,INFORMATION_SCHEMA.TABLE_STORAGE_METRICS 视图,延迟?

时间:2021-06-10 22:55:18

标签: snowflake-cloud-data-platform

我遇到了一些无法解释的问题,我希望 Snowflake 的支持人员可以在这里提供帮助...

INFORMATION_SCHEMA 视图的文档说在这些视图中显示数据没有延迟。 https://docs.snowflake.com/en/sql-reference/account-usage.html#differences-between-account-usage-and-information-schema

但是,此视图中无法立即提供存储分配数据 - INFORMATION_SCHEMA.TABLE_STORAGE_METRICS。

我进行了一些测试,我发现在创建表后用存储信息填充视图需要大约 1-1.5 小时,特别是这些列 - “active_bytes”、“time_travel_bytes”。

这是该视图显示具有延迟的存储分配数据的预期行为吗?与否?问题出在哪里 - 文档或雪花视图?

这是我的测试用例的简短描述

  1. 在 TEST 数据库下创建的表 TEST_TABLE,PUBLIC 架构(“普通”表,非临时表,时间旅行保留参数设置为 10 天)
  2. 填充了数据的表格,“TABLES”视图显示它不是空的 - 大约 7.5 MB,其中有大约 13 万行
  3. 切换到 ACCOUNTADMIN 角色以获得所需架构的正确访问权限
  4. 检查表 INFORMATION_SCHEMA.TABLE_STORAGE_METRICS - 测试表的“active_bytes”、“time_travel_bytes”列显示零
  5. 重新检查了几次视图 - 在大约 1 小时内存储信息显示在“active_bytes”、“time_travel_bytes”这些列中。

执行命令查询视图-

use role ACCOUNTADMIN;
select table_catalog, table_schema, table_name, table_type, is_transient, row_count,  bytes, retention_time from test.information_schema.tables where table_name = 'TEST_TABLE';
select table_catalog, table_schema, table_name, is_transient, active_bytes, time_travel_bytes from test.information_schema.table_storage_metrics where table_name = 'TEST_TABLE';

1 个答案:

答案 0 :(得分:0)

TABLE_STORAGE_METRICS 是用于计费的数据,Snowflake 会根据特定采样率获取用于存储计费的快照信息,因此我可以看到不会实时填充活动字节和时间旅行字节。如果您正在寻找表的实时存储,您可能应该利用 information_schema.tables 视图。