You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BigQuery两种用量统计差异咨询:计费依据及免费额度参考

BigQuery用量统计差异:控制台vs INFORMATION_SCHEMA查询

问题描述

我在统计BigQuery用量时发现两个渠道的数值差异极大:

  • Google Cloud控制台「Quotas & System Limits」页面显示近30天处理约125GB
  • 查询INFORMATION_SCHEMA.JOBS_BY_PROJECT仅显示同期处理约20GB

想请教三个问题:

  1. 哪一数值用于计费?
  2. 为何两者差异巨大?
  3. 在1TB免费额度内应参考哪一数值?

附使用的查询语句:

SELECT
  DATE_TRUNC(DATE(creation_time), MONTH) as month,
  ROUND(SUM(total_bytes_processed)/POW(2,30), 2) AS gigabytes_processed
FROM 
  `region-asia-east1`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE 
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
GROUP BY 
  month
ORDER BY 
  month DESC;

解答

1. 哪一数值用于计费?

计费以Google Cloud控制台「账单」页面的BigQuery数据处理量为准,「Quotas & System Limits」页面的统计口径和计费逻辑对齐,可作为参考;而INFORMATION_SCHEMA.JOBS_BY_PROJECT的查询结果存在局限性,不能直接作为计费依据。

2. 为何两者差异巨大?

差异主要来自以下几个方面:

  • 区域范围限制:你只查询了region-asia-east1区域的任务数据,但如果项目内有其他区域的BigQuery操作(比如跨区域查询、其他地域的加载/导出任务),这部分数据不会被当前查询统计到,而控制台统计的是全项目所有区域的总处理量。
  • 任务类型遗漏:INFORMATION_SCHEMA.JOBS_BY_PROJECT仅统计用户发起的查询任务,但BigQuery的其他操作(如数据加载/导出、ML模型训练、存储过程执行、物化视图刷新等)产生的字节处理量会被控制台计入统计,但不会出现在这个视图中。
  • 权限过滤:如果执行查询的账号没有项目级的BigJob查看权限,JOBS_BY_PROJECT只会返回该账号有权限访问的任务,导致统计数据不全;而控制台的统计是基于项目全量任务数据的。
  • 缓存任务排除:控制台会自动排除不计费的缓存查询处理量,若你的查询未过滤cache_hit = TRUE的记录,可能会混入不计费的任务数据,但这通常是次要影响因素。

3. 在1TB免费额度内应参考哪一数值?

优先参考Google Cloud控制台「账单」页面的「BigQuery 数据处理」条目,或者「Quotas & System Limits」页面的统计数据——这两个渠道的数值和免费额度的消耗计算逻辑完全对齐。

如果想用INFORMATION_SCHEMA查询做参考,需要调整查询逻辑:

  • 若项目涉及多区域,需查询所有区域的JOBS_BY_PROJECT视图并合并结果
  • 添加过滤条件cache_hit = FALSE排除不计费的缓存查询
  • 注意该视图仍会遗漏非查询类任务的处理量,无法完全替代控制台统计

内容的提问来源于stack exchange,提问作者Angry birds

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 20:55:06