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

如何低成本统计嵌套GCS Bucket中各UNIQUE_ID下A目录的总存储量?

最具成本效益的GCS存储量统计方案

核心最优方案:GCS Inventory + BigQuery分析

  • 生成定向Inventory报告:
    开启目标Bucket的Inventory功能,配置前缀过滤为*/A/,只统计UNIQUE_ID/A路径下的对象;报告格式选Parquet(比CSV更节省存储和查询成本),存储到同区域的另一个GCS Bucket。Inventory是GCS原生免费功能,仅收取报告文件的存储费用,对于PiB级数据,报告体积仅为原始数据的极小比例,成本可以忽略。
  • BigQuery分组统计:
    将Inventory报告导入同区域的BigQuery数据集(同区域数据导入无流量费),执行SQL完成分组计算:
    SELECT
      -- 从对象路径中提取UNIQUE_ID
      SPLIT(REPLACE(name, 'Bucket/', ''), '/')[OFFSET(0)] AS UNIQUE_ID,
      SUM(size) AS total_storage_bytes
    FROM
      `你的项目ID.数据集ID.inventory表名`
    WHERE
      name LIKE 'Bucket/%/A/%'
    GROUP BY
      UNIQUE_ID
    
    BigQuery按扫描数据量计费,而Inventory报告体积极小,查询成本极低。

临时需求替代方案(不推荐PiB级数据)

如果只是临时单次统计,可使用gsutil命令行结合awk处理:

gsutil du -s gs://Bucket/*/A/ | awk -F'/' '{uid=$4; size=$1} {sum[uid]+=size} END {for(id in sum) print id, sum[id]}'

但注意:gsutil du需要遍历所有目标对象,PiB级数据会产生大量API请求和跨节点流量,成本远高于Inventory方案,仅适合小体量数据验证。

关键成本优化细节

  • 确保Inventory报告存储Bucket、BigQuery数据集与原数据Bucket同区域,避免跨区域数据传输费用。
  • 严格配置Inventory的前缀过滤,只包含*/A/路径的对象,最小化报告体积。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 04:09:21