本文档介绍了导出到 BigQuery 每个表中的 Cloud Billing 数据架构的参考信息。
结算数据表
启用将 Cloud Billing 数据导出到 BigQuery 的功能后,系统会立即在 BigQuery 数据集中自动创建结算数据表。
- 标准使用费表 - 在 BigQuery 数据集中,该表命名为
gcp_billing_export_v1_<BILLING_ACCOUNT_ID>
。 - 详细使用费表 - 此表包含标准使用费表中的所有数据字段,以及提供资源级费用数据的其他字段,例如产生服务用量的虚拟机或 SSD。在 BigQuery 数据集中,该表命名为
gcp_billing_export_resource_v1_<BILLING_ACCOUNT_ID>
。 - 价格数据表 - 在 BigQuery 数据集中,该表命名为
cloud_pricing_export
。
数据加载频率
标准和详细使用费导出
- 在首次启用将标准或详细使用费用导出到 BigQuery 的功能后,可能需要几个小时才能开始看到 Google Cloud 费用数据传播到 BigQuery 数据集。数据按时间顺序导出。如果导出配置为以追溯方式包含当月和上月的数据,则导出的数据最多可能需要 5 天才能完全与当前的使用情况数据同步。
- Google Cloud 服务会以不同的时间间隔向 Cloud Billing 进程报告使用情况和费用数据。
- Cloud Billing 会定期将使用情况和费用数据导出到您的 BigQuery 数据集(对于导出到 BigQuery 的具体时间,不提供任何送达或延迟保证)。
- 使用情况报告频率因 Google Cloud 服务而异,因此,您不一定能立即看到近期用过的所有 Google Cloud 服务的 Cloud Billing 使用情况和费用数据。
价格导出
- 首次启用将价格导出到 BigQuery 的功能后,最多可能需要 48 小时才能看到您的 Google Cloud 价格数据。
- 启用价格导出功能后,适用于 Cloud Billing 账号的价格数据每天导出到 BigQuery 一次。
数据可用性
对于首次启用标准或详细使用费用数据导出的客户:
如果您将 BigQuery 数据集配置为使用多区域位置(欧盟或美国),则系统会从上月初开始以追溯方式导出 Cloud Billing 数据。例如,如果您在 9 月 23 日启用了标准使用费用或详细使用费用数据导出,则导出内容将包含从 8 月 1 日开始的数据。
我们按时间顺序导出数据,一次导出一天,因此系统会先填充上个月第一天的数据。对于导出数据的初始回填,追溯性 Cloud Billing 数据最多可能需要 5 天完成导出,然后您才能开始看到最新的使用情况数据。
如果您将 BigQuery 数据集配置为使用受支持的单区域位置,则标准使用费用或详细使用费用数据从您启用 Cloud Billing 导出之日起开始提供。也就是说,系统不会针对非多区域数据集位置以追溯方式添加 Google Cloud 结算数据,因此您不会看到启用导出之前的 Cloud Billing 数据。
对于启用,停用且随后重新启用标准使用费用或详细使用费用数据导出的客户,系统可能不会提供明确停用导出时段内的 Cloud Billing 数据。
如果您启用价格数据导出功能,则 BigQuery 数据集仅反映首次启用价格导出功能当天及其后产生的 Cloud Billing 数据。Cloud Billing 价格数据不会以追溯方式添加,因此您不会看到启用导出之前产生的价格数据。
BigQuery 数据集中的数据反映记录使用情况时的资源状态。如果您对资源进行更改,例如为项目添加新标签或更改项目的层次结构(将更改
project.ancestors
),则这些更改仅会在使用情况数据未来导出中显示。之前导出的数据记录不会发生变化。如果您删除了任何已导出的数据(例如 BigQuery 导出记录),我们无法为您回填已删除的记录。
BigQuery 负载符合 ACID,因此,如果您在将数据加载到 BigQuery 的同时查询 BigQuery 中的 Cloud Billing 导出数据集,将不会看到未完成加载的数据。
请查看可能会影响将结算数据导出到 BigQuery 的其他限制,例如启用了客户管理的加密密钥 (CMEK) 的数据集。
限制
将 Cloud Billing 数据导出到 BigQuery 时存在以下限制。
支持与 Cloud Billing 数据搭配使用的 BigQuery 数据集位置
BigQuery 数据集配置为使用位置(多区域位置[欧盟或美国]或单区域位置)。数据集位置是在创建时设置的。创建数据集后,就无法再更改其位置。
Cloud Billing 数据导出支持所有多区域位置(欧盟或美国),但仅支持部分单区域位置。配置 Cloud Billing 导出设置时,如果您创建或选择配置为使用不受支持的单区域位置的数据集,则在尝试保存导出设置时,您会看到数据集区域无效错误。
下表列出了支持与包含 Cloud Billing 数据的 BigQuery 数据集搭配使用的多区域位置和单区域位置。
美洲 亚太地区 欧洲 多区域:美国
区域:
- northamerica-northeast1(蒙特利尔)
- southamerica-east1(圣保罗)
- us-central1(爱荷华)
- us-east1(南卡罗来纳)
- us-east4(北弗吉尼亚)
- us-west1(俄勒冈)
- us-west2(洛杉矶)
- us-west3(盐湖城)
- us-west4(拉斯维加斯)
区域:
- asia-east1(台湾)
- asia-east2(香港)
- asia-northeast1(东京)
- asia-northeast2(大阪)
- asia-northeast3(首尔)
- asia-south1(孟买)
- asia-southeast1(新加坡)
- asia-southeast2(雅加达)
- australia-southeast1(悉尼)
多区域:欧盟
区域:
- europe-central2(华沙)
- europe-north1(芬兰)
- europe-west1(比利时)
- europe-west2(伦敦)
- europe-west3(法兰克福)
- europe-west4(荷兰)
- europe-west6(苏黎世)
对于包含标准使用费用数据或详细使用费用数据的 BigQuery 数据集,您为数据集配置的位置类型会影响 Google Cloud 结算数据导出到数据集的时间:
- 如果您将数据集配置为使用多区域位置,则数据集会包含您首次启用导出时的上月初开始产生的 Google Cloud 结算数据,除非您重新启用导出。也就是说,系统会以追溯方式添加当月和上月的 Google Cloud 结算数据。对于导出数据的初始回填,追溯性 Cloud Billing 数据最多可能需要 5 天完成导出,然后您才能开始看到当前的使用情况数据。
如果数据集配置为使用受支持的单区域位置,则标准使用费用数据和详细使用费用数据仅反映自启用 Cloud Billing 导出之日起产生的 Google Cloud 结算数据。也就是说,系统不会针对非多区域数据集位置以追溯方式添加 Google Cloud 结算数据,因此您不会看到启用导出之前的 Cloud Billing 数据。
如需了解详情,请参阅数据可用性。
包含价格数据的 BigQuery 数据集仅收集自设置 Cloud Billing 导出之日起产生的 Google Cloud 结算数据。也就是说,系统不会以追溯方式添加 Google Cloud 价格数据,因此您不会看到启用导出之前的 Cloud Billing 价格数据。如需了解详情,请参阅数据可用性。
导出详细使用费用数据时,详细导出会自动包含有关 Compute Engine 的资源级信息。如需在详细的数据导出中查看 Google Kubernetes Engine (GKE) 集群费用的明细,您还必须为 GKE 启用费用分配。
数据集加密:将结算数据导出到 BigQuery 时,系统不支持客户管理的加密密钥 (CMEK)。如果您为结算数据数据集启用了 CMEK 加密,则此类加密会阻止 Cloud Billing 将结算数据写入该数据集中的相应表。相反,您需要启用数据集以使用 Google 拥有和 Google 管理的密钥。
如果您要对包含导出数据的表使用 BigQuery 行级安全性,则必须使用 BigQuery
TRUE
过滤条件向 Cloud Billing 导出服务账号billing-export-bigquery@system.gserviceaccount.com
授予表的完整访问权限。以下命令会向 Cloud Billing 服务账号授予访问权限:CREATE ROW ACCESS POLICY cloud_billing_export_policy ON `__project_id__.__dataset_id__.__table_id__` GRANT TO ('serviceAccount:billing-export-bigquery@system.gserviceaccount.com') FILTER USING (TRUE);
资源级标记最多可能需要一个小时才能传播到 BigQuery 导出结果中。如果标记是在一个小时内添加或移除的,或者资源存在的时间不超过一个小时,则该标记可能不会显示在导出结果中。
资源级标记适用于以下资源:
- Compute Engine 实例
- Spanner 实例
- Cloud Run 服务
- Artifact Registry 制品库
如果您使用 VPC Service Controls,则您的 BigQuery 导出可能会被阻止。如需解决此问题,您需要手动豁免 VPC。
相关主题
与导出的 Cloud Billing 数据相关的主题
Google Cloud 控制台中提供的费用和价格报告
- 查看您的 Cloud Billing 报告和费用趋势
- 查看并下载账单或对账单的费用详细信息
- 查看和下载 Google 云服务的价格信息
- 通过费用明细报告了解您节省的费用
- 分析您的承诺使用折扣的有效性
- 查看您的费用和付款记录