我想知道如何使用 Snowflake 将不同功能的计费分开。这是否必须使用资源监视器和单独的仓库。或者可以在模式\数据库或其他层设置什么?
答案 0 :(得分:0)
当然,虚拟仓库是实现您的呼叫的第一个呼叫点 - 大部分成本是计算,很容易想到每个功能的虚拟仓库。至于磁盘空间,您可能会想出一个命名约定,允许您区分它们或转到数据库的所有者,或者如果您愿意,可以使用架构。 我建议从这份 Power BI 报告及其作者的文章开始,该文章说明了如何使用 Snowflake 提供的元数据构建它:
https://medium.com/analytics-vidhya/snowflake-power-bi-snowflake-usage-report-f628dadbdc85
答案 1 :(得分:0)
假设您有 4 个不同的功能区域(数据加载、ETL、仪表板和数据科学家),因此有 4 个不同的仓库,每个区域一个。
下一步是将不同的虚拟仓库分配给相应的用户。这可以通过
USE WAREHOUSE etl_warehouse
(例如在数据加载或 etl 场景中)ALTER USER analyst123 SET DEFAULT_WAREHOUSE = analyst_warehouse
为每个角色分配一个默认仓库目前无法将仓库分配给架构/数据库以确保“与此数据库关联的所有工作负载都必须与此虚拟仓库一起运行”。一个用户和他的仓库之间只能有连接。
资源监视器也一样:它们不能分配给数据库或架构,而是分配给一个或多个虚拟仓库和帐户级别。
有关 INFORMATION_SCHEMA/ACCOUNT_USAGE 视图和表的更多详细信息,我推荐其他答案之一中所述的链接。