处理账户预算¶
账户预算监控账户中所有 Credit 使用量的支出。
激活账户预算¶
要开始使用 Budgets 来监控账户的 Credit 使用量,请激活账户预算。激活账户预算后,您可以设置账户的支出限额,并配置通知的发送方式,以便在 Credit 使用量超过支出限额时接收通知。当预计支出比支出限额高出 10% 以上时,通知开始生效。
您可以通过使用 Snowsight 或通过执行 SQL 语句来激活账户预算。
接下来的各部分介绍如何激活账户预算:
创建自定义角色以管理账户预算¶
您可以创建自定义角色以激活和修改账户预算。被授予此角色的用户可以通过对账户预算采取以下操作来管理预算:
激活和停用账户预算。
设置支出限额。
编辑通知设置。
监控账户的 Credit 使用量。
有关预算管理员角色所需的角色和权限的完整列表,请参阅 Budgets 角色和权限。
以下示例创建一个名为 account_budget_admin
的角色,并授予该角色监控和管理账户预算的能力:
USE ROLE ACCOUNTADMIN;
CREATE ROLE account_budget_admin;
GRANT APPLICATION ROLE SNOWFLAKE.BUDGET_ADMIN TO ROLE account_budget_admin;
GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE TO ROLE account_budget_admin;
使用 Snowsight 激活账户预算¶
备注
只有具有 ACCOUNTADMIN 角色或 被授予了账户预算管理员权限 角色的用户才能激活和设置账户预算。
登录 Snowsight。
选择 Admin » Cost Management。
选择 Budgets。
如果出现提示,请选择一个仓库。
在仪表板中,选择 Set up Account Budget。
输入账户的目标支出限额。
输入用于接收通知电子邮件的电子邮件地址。
备注
添加以用于接收预算通知的每个电子邮件地址都必须 经过验证。如果列表中的电子邮件地址 未 经过验证,则通知电子邮件设置会失败。
选择 Finish Setup。
使用 SQL 命令激活账户预算¶
备注
只有具有 ACCOUNTADMIN 角色或 被授予了账户预算管理员权限 角色的用户才能激活和设置账户预算。
通过在 SNOWFLAKE.LOCAL.ACCOUNT_ROOT_BUDGET 对象上调用 account_root_budget!ACTIVATE 方法来激活账户预算:
CALL SNOWFLAKE.LOCAL.ACCOUNT_ROOT_BUDGET!ACTIVATE();
调用 <budget_name>!SET_SPENDING_LIMIT 方法设置支出限额:
CALL SNOWFLAKE.LOCAL.ACCOUNT_ROOT_BUDGET!SET_SPENDING_LIMIT(1000);
设置预算通知,以便在 Credit 使用量预计超过支出限额时接收通知。
请参阅 预算通知。
停用账户预算¶
您可以使用 Snowsight 或 SQL 来停用账户预算。
停用账户预算会将账户预算重置为激活前的状态:
将删除所有历史账户预算数据。
账户预算的背景测量任务已暂停。
将重置支出限额和电子邮件通知的账户预算设置。
账户预算停用不会影响自定义预算。要从账户中删除自定义预算,请使用 DROP BUDGET 命令。
备注
如果账户预算已停用,则无法使用 Snowsight 创建新的自定义预算。但是,您可以继续使用 SQL 创建自定义预算。
使用 Snowsight 停用账户预算¶
您可以使用 Budgets 页面停用账户预算:
使用 SQL 命令停用账户预算¶
您可以使用 account_root_budget!DEACTIVATE 方法停用账户预算:
CALL SNOWFLAKE.LOCAL.ACCOUNT_ROOT_BUDGET!DEACTIVATE();