利用成本洞察来节省开支¶
Snowflake 提供成本洞察,可识别在特定账户内优化 Snowflake 成本的机会。这些洞察每周都会进行计算和更新。
每个洞察都表明通过优化 Snowflake 可以节省多少 Credit 或兆字节。
备注
您必须获得 ACCOUNTADMIN 角色授权,才能查看成本洞察。
要访问 Cost Insights 磁贴,请执行以下步骤:
登录 Snowsight。
切换到 ACCOUNTADMIN 角色。
在导航菜单中,选择 Admin » Cost Management。
选择 Account Overview 选项卡。
找到 Cost insights 磁贴。
以下每个洞察都包括关于如何优化支出的建议。
- 洞察:很少使用且支持自动聚类的表
该洞察可识别支持 自动聚类 的表。此账户每周查询这些表的次数少于 100 次。
为表启用自动聚类可以显著提高针对该表的查询性能。不过,随着表的变化,Snowflake 必须使用无服务器计算资源来使其保持良好的聚类状态。如果对表执行的查询次数很少,所产生的成本可能不足以证明性能提升的合理性。
建议: 考虑禁用这些表的自动聚类。在关闭自动聚类之前,请确定表是仅为灾难恢复目的而存在,还是通过数据共享供其他 Snowflake 账户使用,这可能解释了该表不经常被访问的原因。
例如,要禁用名为
t1
的表的自动聚类,请执行以下命令:ALTER TABLE t1 SUSPEND RECLUSTER;
- 洞察:很少使用的物化视图
该洞察可识别 物化视图,此账户每周查询这些视图的次数少于 10 次。
创建物化视图可以显著提高某些查询模式的性能。不过,物化视图会产生额外的存储成本,以及与保持物化视图与新数据同步相关的无服务器计算成本。如果对物化视图执行的查询次数很少,所产生的成本可能不足以证明性能提升的合理性。
建议: 考虑移除或暂停更新物化视图。在删除物化视图之前,请确定表是仅为灾难恢复目的而存在,还是通过数据共享供其他 Snowflake 账户使用,这可能解释了该表不经常被访问的原因。
例如,要删除名为
mv1
的物化视图,请执行以下命令:DROP MATERIALIZED VIEW mv1;
- 洞察:很少使用的搜索优化路径
该洞察可识别 搜索优化 访问路径,此账户每周使用这些路径的次数少于 10 次。
搜索优化使用搜索访问路径来提高某些类型的点查找和分析查询的性能。为表添加搜索优化可以显著提高这些查询的性能。然而,搜索优化会产生额外的存储成本,以及与保持存储更新相关的无服务器计算成本。如果使用由搜索优化创建的搜索访问路径进行查询的次数很少,所产生的成本可能不足以证明性能提升的合理性。
建议: 考虑从表中移除搜索优化。在移除搜索优化之前,请确定表是仅为灾难恢复目的而存在,还是通过数据共享供其他 Snowflake 账户使用,这可能解释了该表不经常被访问的原因。
例如,要从名为
t1
的表中完全移除搜索优化,请执行以下命令:ALTER TABLE t1 DROP SEARCH OPTIMIZATION;
- 洞察:从未查询过的大型表
该洞察可识别此账户在过去一周内未查询过的大型表。
建议: 考虑删除未使用的表,这样可以降低存储成本,而不会影响任何工作负载。在删除这些表之前,请确定表是仅为灾难恢复目的而存在,还是通过数据共享供其他 Snowflake 账户使用,这可能解释了该表不经常被访问的原因。
例如,要删除名为
t1
的表,请执行以下命令:DROP TABLE t1;
- 洞察:超过 100 GB 且写入数据但未读取数据的表
该洞察可识别此账户在过去一周内未查询过的大型表。
建议: 如果数据从未读取,则存储数据并将新数据引入 Snowflake,这样可能就有点浪费了。考虑删除这些表以节省存储成本,或者停止写入新数据以节省引入所使用的 Credit。在删除这些表之前,请确定表是仅为灾难恢复目的而存在,还是通过数据共享供其他 Snowflake 账户使用,这可能解释了该表不被读取的原因。
例如,要删除名为
t1
的表,请执行以下命令:DROP TABLE t1;
- 洞察:短期永久表
该洞察可识别在创建后 24 小时内删除且大小超过 100 GB 的表。
建议: 如果只需要在短时间内持久化数据,可考虑为未来的表使用 临时表或瞬态表。使用临时表或瞬态表可能会帮助您节省 故障安全和 Time Travel 成本。
例如,要创建一个新的瞬态表
t1
,请执行以下命令:CREATE TRANSIENT TABLE t1;