笔记本使用情况及成本监控

笔记本通过其配置的 虚拟仓库计算池 使用计算资源。为了管理成本及确保高效运营,监控个人笔记本、用户和底层计算基础设施的使用情况非常重要。这种可见性有助于保证高效运营,并在整个环境中支持成本问责。

Snowflake 支持通过 ACCOUNT_USAGE 视图和系统表访问详细使用数据。这些数据可以帮助回答如下问题:

  • 每个笔记本的每小时 Credit 使用量是多少?

  • 过去一周,笔记本运行的频率如何?

  • 过去一个月,哪些用户运行了笔记本?

  • 过去一周,笔记本使用了哪些计算池或仓库?

  • 使用特定计算资源的笔记本总 Credit 成本是多少?

有关计算相关成本管理的更广泛概述,请参阅 了解计算成本

示例查询

您可以查询 Snowflake 的 ACCOUNT_USAGE 视图,以深入了解笔记本的 Credit 消耗情况。这些视图按笔记本、用户或计算池级别按每日或每小时细分成本。

用途

在以下示例中,每行代表单个笔记本执行,包括执行时间戳、运行笔记本的用户以及运行时环境(仓库或容器运行时)等详细信息。

-- Warehouse Runtime
SELECT query_text, t1.user_name, credits_attributed_compute as total_warehouse_credits
FROM snowflake.account_usage.query_history t1
INNER JOIN snowflake.account_usage.query_attribution_history t2
ON t1.query_id = t2.query_id

-- Add your notebook name
AND t1.query_text ILIKE 'execute notebook% <example_nb_name>'
;

-- Container Runtime
SELECT
  start_time, notebook_name, user_name, SUM(credits) AS total_container_runtime_credits
FROM snowflake.account_usage.notebooks_container_runtime_history
WHERE notebook_name = '<example_nb_name>'
GROUP BY ALL;
Copy

容器运行时下的成本监控

以下查询可帮助您监控账户中笔记本的 Credit 使用量。使用这些查询可以分析笔记本的使用模式,估算成本,并了解各个笔记本对计算池费用的影响。

查询:笔记本每小时的 Credit 使用量

此查询检索特定笔记本的运行时历史记录,包括 Credit 使用量和执行时间戳。使用这些数据来了解笔记本的运行频率和时长,并确定每小时的 Credit 使用模式或峰值。

SELECT * FROM snowflake.account_usage.notebooks_container_runtime_history
WHERE notebook_name = '<example_nb_name>';
Copy
查询:运行特定笔记本的成本

此查询显示特定笔记本的总 Credit 使用量。使用它来估算笔记本的成本并确定高成本笔记本。

SELECT
  notebook_name,
  SUM(credits) AS total_credits
FROM snowflake.account_usage.notebooks_container_runtime_history
WHERE notebook_name = '<example_nb_name>'
GROUP BY notebook_name;
Copy
查询:每个笔记本的总计算池成本

此查询显示在特定计算池上运行的每个笔记本的总 Credit 使用量。使用它来细分笔记本的计算使用情况,这有助于确定哪些笔记本消耗的计算池的总成本最高。

SELECT
  notebook_name,
  SUM(credits) AS total_credits
FROM snowflake.account_usage.notebooks_container_runtime_history
WHERE compute_pool_name = '<example_cp_name>'
GROUP BY notebook_name;
Copy
查询:识别运行特定笔记本的用户

此查询会返回执行特定笔记本的用户的列表。使用它来了解使用模式,或识别共享笔记本的协作者和使用者。

SELECT
  DISTINCT user_name
FROM snowflake.account_usage.notebooks_container_runtime_history
WHERE notebook_name = '<example_nb_name>';
Copy

附加备注

查询产生的成本与基础仓库相关。有关仓库工作原理的信息,请参阅 虚拟仓库 Credit 使用量

语言: 中文