雪花计费

时间:2021-03-30 05:15:00

标签: split snowflake-cloud-data-platform

我想知道如何使用 Snowflake 将不同功能的计费分开。这是否必须使用资源监视器和单独的仓库。或者可以在模式\数据库或其他层设置什么?

2 个答案:

答案 0 :(得分:0)

当然,虚拟仓库是实现您的呼叫的第一个呼叫点 - 大部分成本是计算,很容易想到每个功能的虚拟仓库。至于磁盘空间,您可能会想出一个命名约定,允许您区分它们或转到数据库的所有者,或者如果您愿意,可以使用架构。 我建议从这份 Power BI 报告及其作者的文章开始,该文章说明了如何使用 Snowflake 提供的元数据构建它:

https://medium.com/analytics-vidhya/snowflake-power-bi-snowflake-usage-report-f628dadbdc85

答案 1 :(得分:0)

假设您有 4 个不同的功能区域(数据加载、ETL、仪表板和数据科学家),因此有 4 个不同的仓库,每个区域一个。

下一步是将不同的虚拟仓库分配给相应的用户。这可以通过

  1. 在脚本顶部运行 USE WAREHOUSE etl_warehouse(例如在数据加载或 etl 场景中)
  2. 通过执行 ALTER USER analyst123 SET DEFAULT_WAREHOUSE = analyst_warehouse 为每个角色分配一个默认仓库

目前无法将仓库分配给架构/数据库以确保“与此数据库关联的所有工作负载都必须与此虚拟仓库一起运行”。一个用户和他的仓库之间只能有连接。

资源监视器也一样:它们不能分配给数据库或架构,而是分配给一个或多个虚拟仓库和帐户级别。

有关 INFORMATION_SCHEMA/ACCOUNT_USAGE 视图和表的更多详细信息,我推荐其他答案之一中所述的链接。