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

如何从AWS Athena中访问Cost Allocation Tag数据

解决方案

前置校验

先再次确认Cost and Usage Report(CUR)配置的「报告内容」模块已勾选包含成本分配标签,只有开启该选项的CUR报告才会投递标签数据。

1. 确认数据覆盖范围

成本分配标签数据不会回溯到你激活标签、开启CUR标签选项之前生成的账单数据,只有配置生效后新生成的CUR文件才会包含标签字段。你可以直接下载S3存储桶中配置生效后生成的CUR源文件,确认是否存在resource_tags_开头的字段。

2. 同步更新Athena表结构

该问题90%以上的场景都是Athena表为开启CUR标签选项之前创建,旧表结构没有同步新增的标签字段:

  • 若你使用AWS官方提供的建表语句:删除原有CUR表,到CUR报告详情页复制最新的官方适配建表语句,在Athena中执行即可生成包含标签字段的新表。
  • 若你使用Glue Crawler自动生成表结构:重新运行一次对应CUR路径的Crawler,即可自动识别新增的标签字段同步到表结构。

3. 标签字段查询语法

CUR中的成本分配标签不会生成独立顶层字段,存储规则和查询语法如下:

  • 如果你使用的是CSV格式的CUR:标签会生成resource_tags_<标签键>格式的独立字段,标签键中的特殊字符会自动替换为下划线,比如标签键app:project对应的字段名为resource_tags_app_project
  • 如果你使用的是Parquet格式的CUR:标签统一存储在resource_tags嵌套结构体中,通过resource_tags['<标签键>']语法查询

查询示例:

-- CSV格式CUR查询示例,标签键为project
SELECT
  line_item_usage_start_date,
  product_product_name,
  line_item_unblended_cost,
  resource_tags_project
FROM your_cur_table_name
WHERE line_item_usage_start_date >= date '2024-01-01'
LIMIT 100;

-- Parquet格式CUR查询示例,标签键为project
SELECT
  line_item_usage_start_date,
  product_product_name,
  line_item_unblended_cost,
  resource_tags['project'] as project_tag
FROM your_cur_table_name
WHERE line_item_usage_start_date >= date '2024-01-01'
LIMIT 100;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 21:06:03