探索存储成本¶
总存储成本是与以下方面相关的成本总和:
暂存文件存储
数据库表存储
故障安全和 Time Travel 存储
本主题介绍以下两种深入了解历史存储成本的方式:使用 Snowsight,或者编写对 ACCOUNT_USAGE 和 ORGANIZATION_USAGE 架构中的视图进行的查询。Snowsight 让您可以通过可视化仪表板快速轻松地获取有关费用的信息。对使用情况视图的查询让您可以深入了解成本数据,并有助于生成自定义报告和仪表板。
要更好地了解存储成本是如何产生的,请参阅 了解存储成本。
查看存储历史记录¶
用户可以使用 Snowsight 来查看 Snowflake 中存储的数据量。
备注
Snowsight 最多可能需要 72 小时才能提供成本信息。
要探索存储成本,请执行以下操作:
登录 Snowsight。
切换到 ACCOUNTADMIN 角色。如果您不是账户管理员,请切换为 拥有成本和使用情况数据访问权限 的角色。
导航到 Admin » Cost Management。
选择要使用的仓库,以查看使用情况数据。Snowflake 建议为此目的使用 XS 仓库。
选择 Consumption。
从 Usage Type 下拉列表中选择 Storage。
备注
如果用户具有 ACCOUNTADMIN 角色,但 没有 ORGADMIN 角色,则他们只能查看当前账户的费用。允许他们切换到不同账户的 Account 筛选器不会出现。
按标签筛选¶
为了帮助将 成本归因 于组织内的逻辑单元,可以筛选 Usage 仪表板,以显示与特定标签/值组合关联的存储。这种按标签筛选存储的功能类似于按标签筛选 credit 使用量。有关详细信息,请参阅 探索计算成本。
按类型或对象查看存储¶
在查看显示存储历史记录的条形图时,可以选择 By Type 或 By Object 来筛选数据。
By Type 筛选显示以下每种存储类型的存储大小: Database、 Fail Safe 和 Stage。与 Time Travel 关联的存储包含在“数据库”类别中。
By Object 筛选以图形方式显示每个对象的存储大小,例如特定数据库或暂存区的大小。
查看表的数据使用情况¶
具有相应访问权限的用户可以使用 Web 界面查看架构/数据库中各个表的大小(以字节为单位):
要使用 Snowsight 查看表的大小,请执行以下操作:
选择 Data » Databases。
在 Databases 页面左侧,进入数据库对象资源管理器。
展开数据库,然后展开数据库中的任意架构。
点击任意表即可查看表统计信息,包括其大小。
重要
显示的表大小表示 活动 字节数。在大多数情况下,这表示在查询中扫描整个表时将扫描的字节数;但是,此数字可能与表的物理字节数(即存储在磁盘上的字节数)不同,特别是对于克隆的表和具有已删除数据的表:
克隆的表不会使用额外的存储空间(直到将行添加到表中,或者修改或删除表中的现有行)。因此,显示的表大小可能 大于 为表存储的实际物理字节数,即表对账户整体存储的贡献 小于 显示的表大小。
从表中删除的数据不包括在显示的表大小中;但是,数据将保留在 Snowflake 中,直到数据的 Time Travel 保留期(默认值为 1 天)和故障安全期(7 天)都过去。在这两个时间段内,显示的表大小 小于 为表存储的实际物理字节数,即表对账户整体存储的贡献 大于 显示的表大小。
从表中删除一列不会立即删除该列中的数据。删除列中数据的物理字节仍在存储中。在这种情况下,显示的表大小 大于 在查询中扫描整个表时扫描的字节数。有关详细信息,请参阅 ALTER TABLE 使用说明。
有关克隆表和已删除数据的存储的更多信息,请参阅 数据存储注意事项。
查询数据以了解表大小¶
您可以编写 SQL 查询来深入了解表,包括表的大小,而不是使用 Web 界面。
具有相应访问权限的用户可以使用 SHOW TABLES 命令列出有关表的数据。
此外,具有 ACCOUNTADMIN 角色的用户可以使用 SQL 通过对 ACCOUNT_USAGE 架构中的 TABLE_STORAGE_METRICS 视图执行查询来查看表大小信息。
有关解释这些 SQL 查询检索到的表数据的重要信息,请参阅 查看表的数据使用情况 中的注释(本主题内容)。
查询存储成本数据¶
Snowflake 提供了两个架构(ORGANIZATION_USAGE 和 ACCOUNT_USAGE),它们包含与使用情况和费用相关的数据。ORGANIZATION_USAGE 架构提供组织中所有账户的费用信息,而 ACCOUNT_USAGE 架构提供单个账户的类似信息。这两个架构中的视图提供可立即分析的详细使用情况数据,以构建自定义报告或仪表板。
ORGANIZATION_USAGE 和 ACCOUNT_USAGE 架构中的大多数视图都包含以存储大小形式呈现的存储成本。若要按货币而非大小查看成本,请编写针对 USAGE_IN_CURRENCY_DAILY 视图 的查询。此视图使用 TB 的每日价格,将存储大小转换为以货币表示的成本。
以下视图提供了与存储相关的使用情况和成本信息。
视图 |
描述 |
架构 |
---|---|---|
DATABASE_STORAGE_USAGE_HISTORY |
账户/组织中数据库(包括 Time Travel 中的数据)、故障安全和混合表的每日存储量(以字节为单位)。 |
|
HYBRID_TABLES |
账户中每个混合表行的数据存储量(以字节为单位)。 |
|
LISTING_AUTO_FULFILLMENT_ DATABASE_STORAGE_DAILY |
由 Cross-Cloud Auto-Fulfillment 履行到其他区域的数据库的数据存储(以字节为单位)。 |
|
LISTING_AUTO_FULFILLMENT_ USAGE_HISTORY |
通过使用 Cross-Cloud Auto-Fulfillment 将数据产品履行到其他区域的相关估算使用量。请参阅 STORAGE 的 SERVICE_TYPE。 |
|
STORAGE_DAILY_HISTORY |
存储的平均每日存储量(以字节为单位)。将数据库存储 (DATABASE_STORAGE_USAGE_HISTORY) 和暂存区存储 (STAGE_STORAGE_USAGE_HISTORY) 组合在一起。 |
|
STAGE_STORAGE_USAGE_HISTORY |
所有 Snowflake 暂存区(包括指定内部暂存区和默认暂存区)的平均每日存储使用量(以字节为单位)。 |
|
TABLE_STORAGE_METRICS |
表的存储(以字节为单位),包括不再处于活动状态但继续产生成本的存储(例如,具有 Time Travel 保留期的已删除的表)。 |
|
USAGE_IN_CURRENCY_DAILY |
每日平均存储量(以字节为单位)以及以组织货币为单位的使用成本。 |
备注
Snowflake Information Schema 的视图和表函数也提供与成本相关的使用情况数据。虽然首选使用 ACCOUNT_USAGE 架构,但在某些情况下,Information Schema 的速度可能更快。