处理账户预算¶
账户预算监控账户中所有 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 角色的用户或 被授予账户预算管理员权限 的角色的用户,才能为普通账户激活和设置账户预算。
如果您正在为 组织账户 激活账户预算,请使用 GLOBALORGADMIN 角色,而不是 ACCOUNTADMIN 角色。
使用 SQL 命令激活账户预算¶
备注
只有具有 ACCOUNTADMIN 角色的用户或 被授予账户预算管理员权限 的角色的用户,才能在普通账户中激活和设置账户预算。
如果您正在为 组织账户 激活账户预算,请使用 GLOBALORGADMIN 角色,而不是 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 页面停用账户预算:
登录 Snowsight。
在导航菜单中,选择 Admin » Cost management。
选择 Budgets。
选择 Deactivate account budget。
使用 SQL 命令停用账户预算¶
您可以使用 account_root_budget!DEACTIVATE 方法停用账户预算:
CALL SNOWFLAKE.LOCAL.ACCOUNT_ROOT_BUDGET!DEACTIVATE();