了解预算成本

本主题内容:

使用预算会产生以下成本:

  • 计算成本 – Snowflake 将运行无服务器后台任务(_MEASUREMENT_TASK 和 _BACKFILL_TASK),以收集账户预算和账户中自定义预算的 Credit 使用量数据。这些任务使用的计算资源将计入您的账户费用。

  • 存储成本 – Snowflake 将预算的元数据存储在您的账户中。此元数据的存储将计入您的账户费用。

了解计算成本

You can view costs for serverless tasks using Snowsight or the Account Usage SERVERLESS_TASK_HISTORY 视图.

备注

_MEASUREMENT_TASK 任务会在添加或移除对象标签时运行,这会产生运行任务所需的无服务器计算成本。

Example: Compute cost of all budgets

The following example sums the credit usage for the measure task for the previous 28 days, which helps you understand the total compute cost of using budgets:

SELECT SUM(credits_used)
   FROM snowflake.account_usage.serverless_task_history
   WHERE task_name = '_MEASUREMENT_TASK'
     AND start_time >= DATEADD('day', -28, current_timestamp());
Copy
示例:计算单个预算的成本

The following example lists the budgets in the account along with the compute costs associated with each budget within the specified time period.

WITH costs AS (
  SELECT instance_id, SUM(credits_used) AS sum_credits
    FROM snowflake.account_usage.serverless_task_history
    WHERE start_time >= DATE_TRUNC('month',  CURRENT_TIMESTAMP())
      AND instance_id IS NOT NULL
   GROUP BY 1)
SELECT ci.name, ci.schema_name, ci.database_name, costs.sum_credits
FROM snowflake.account_usage.class_instances ci
  JOIN costs
    ON costs.instance_id = ci.id
WHERE class_name = 'BUDGET' AND class_database_name = 'SNOWFLAKE' AND deleted IS NULL;
Copy

了解存储成本

预算所需的数据和元数据存储在以下内部表中:

  • _CONFIGURATION_TABLE

  • _MEASUREMENT_TABLE

  • _NOTIFICATION_TABLE

  • _BUDGET_HOT_USAGE_DATA

  • _BUDGET_COLD_USAGE_DATA

要确定与这些表相关的成本,您可以在“Account Usage”或“Organization Usage”架构中查询 TABLES 视图,以返回用于这些表的存储量。

以下示例返回与当前账户中预算相关的内部表所使用的存储空间总和:

SELECT SUM(bytes)
   FROM snowflake.account_usage.tables
   WHERE table_name IN (
      '_CONFIGURATION_TABLE',
      '_MEASUREMENT_TABLE',
      '_NOTIFICATION_TABLE',
      '_BUDGET_HOT_USAGE_DATA',
      '_BUDGET_COLD_USAGE_DATA');
Copy
语言: 中文