了解您的报告版本 - AWS Data Exports

了解您的报告版本

AWS 每天至少更新一次您的成本和使用情况报告,直到最终确定您的费用。在创建报告时,您可以选择创建新的报告版本,或者在每次更新时覆盖现有的报告版本。

您的报告文件包括一个 .csv 文件或一组 .csv 文件和一个清单文件。您的报告还可能包含支持您的数据与 Amazon Athena、Amazon Redshift 或 Quick Suite 集成的任何其他文件。

以下几节根据您选择的报告版本控制介绍文件组织结构和命名约定。

成本和使用情况报告交付时间表

在报告周期内,每次 AWS 更新报告后,AWS 都会提供一个新报告和一个新清单文件。AWS 以之前的报告为基础构建,直到结算期结束。在报告账单周期结束后,AWS 将生成新报告并且不会使用之前的报告中的任何信息。

创建新的成本和使用情况报告版本

在您选择保留以前的成本和使用情况报告时,您的 AWS CUR 使用以下 Amazon S3 组织结构和命名约定。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<assemblyId>/<example-report-name>-<file-number>.csv.<zip|gz>
  • report-prefix = 您为报告分配的前缀。

  • report-name= 您为报告分配的名称。

  • yyyymmdd-yyyymmdd = 报告覆盖的日期范围。报告将于日期范围的末尾最终确定。

  • assemblyId = 每次更新报告后 AWS 创建的 ID。

  • file-number = 如果更新包含一个大型文件,AWS 可能会将该文件拆分成多个文件。file-number 跟踪一个更新中的不同文件。

  • csv = 报告文件的格式。

  • zipgz = 应用于报告文件的压缩的类型。

例如,您的报告可能作为以下文件的集合进行传输。

<example-report-prefix>/<example-report-name>/20160101-20160131/<123456789>/<example-report-name>-<1>.csv.<zip> <example-report-prefix>/<example-report-name>/20160101-20160131/<123456789>/<example-report-name>-<2>.csv.<zip> <example-report-prefix>/<example-report-name>/20160101-20160131/<123456789>/<example-report-name>-<3>.csv.<zip> <example-report-prefix>/<example-report-name>/20160101-20160131/<123456789>/<example-report-name>-Manifest.json <example-report-prefix>/<example-report-name>/20160101-20160131/<example-report-name>-Manifest.json

AWS 会将一个报告日期范围内的所有报告传输到相同的 report-prefix/report-name/yyyymmdd-yyyymmdd 文件夹。AWS 为每个报告提供了唯一的 ID 并将其传输到日期范围文件夹中的 assemblyId 子文件夹。如果报告作为单个文件过大,则会被拆分成多个文件并传输到相同的 assemblyId 文件夹。

有关保留先前报告时的清单文件的更多信息,请参阅成本和使用情况报告清单文件

覆盖以前的成本和使用情况报告

在您选择覆盖以前的成本和使用情况报告时,您的 AWS CUR 使用以下 Amazon S3 组织结构和命名约定。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-<file-number>.csv.<zip|gz>
  • report-prefix = 您为报告分配的前缀。

  • report-name= 您为报告分配的名称。

  • yyyymmdd-yyyymmdd = 报告覆盖的日期范围。AWS 在日期范围结束时完成报告。

  • file-number = 如果更新包含一个大型文件,AWS 可能会将该文件拆分成多个文件。file-number 跟踪一个更新中的不同文件。

  • csv = 报告文件的格式。

  • zipgz = 应用于报告文件的压缩的类型。

例如,您的报告可能作为以下文件的集合进行传输。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-<1>.csv.<zip> <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-<2>.csv.<zip><example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-<3>.csv.<zip> <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-Manifest.json

Athena 规范

如果您在创建 AWS CUR 时选择了 Athena 支持,则文件命名约定与您选择覆盖 AWS CUR 时的文件命名约定相同,但格式和压缩除外。Athena AWS CUR 文件改用 .parquet。例如,您的报告可能作为以下文件的集合进行传输。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>.parquet <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<cost_and_usage_data_status> <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-Manifest.json <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-create-table.sql <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/crawler-cfn.yml

CloudFormation 规范

除了 AWS CUR 文件以外,AWS 还提供一个 CloudFormation 模板,您可以使用该模板设置 CloudFormation 堆栈,以使您能够使用 Athena 查询 Amazon S3 数据。如果您不希望使用 CloudFormation 模板,可以使用提供的 SQL 创建您自己的 Athena 表。有关更多信息,请参阅 使用 Amazon Athena 查询成本和使用情况报告

成本和使用情况报告清单文件

在 AWS 更新 AWS CUR 时,AWS 还会创建并提供可用于 Amazon Athena、Amazon Redshift 或 Quick Suite 的清单文件。

清单文件使用命名约定,并列出以下内容:

  • 迄今为止报告中包含的所有详细信息列

  • 报表文件的列表(如果报表被拆分为多个文件)

  • 报告所涵盖的时间段以及其他信息。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-Manifest.json <example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<assemblyId>/<example-report-name>-Manifest.json <example-report-prefix>/<example-report-name>/<example-report-name>/year=2018/month=12/<example-report-name>-Manifest.json

创建新的成本和使用情况报告版本

在您保留以前的成本和使用情况报告时,清单文件将传送到日期范围文件夹和 assemblyId 文件夹。每次 AWS 为某个日期范围创建新的 AWS CUR 时,它都会使用更新的清单文件覆盖日期范围文件夹中存储的清单文件。AWS 将相同的更新清单文件以及该更新的文件一起传送到 assemblyId 文件夹。assemblyId 文件夹中的清单文件不会被覆盖。

覆盖以前的成本和使用情况报告

在您覆盖以前的 AWS CUR 时,清单文件将传送到 month=mm 文件夹。清单文件与报表文件一起被覆盖。

Amazon Redshift 规范

如果您在 AWS CUR 中选择了 Amazon Redshift 支持选项,AWS 还会创建并提供一个文件,其中包含将报告上传到 Amazon Redshift 所需的 SQL 命令。您可以使用普通文本编辑器打开 SQL 文件。SQL 文件使用以下命名约定。

<example-report-prefix>/<example-report-name>/yyyymmdd-yyyymmdd/<assemblyId>/<example-report-name>-RedshiftCommands.sql

如果您使用了 RedshiftCommands 文件中的命令,则不需要打开 RedshiftManifest 文件。

重要

manifest 文件决定了 copy 文件中的 RedshiftCommands 命令上传的报告文件。删除或移除 manifest 文件将破坏 RedshiftCommands 文件中的复制命令。

Amazon Athena 规范

如果您在 AWS CUR 中选择 Amazon Athena 支持选项,AWS 还会创建并提供多个文件以帮助设置您所需的所有资源。AWS 提供一个 CloudFormation 模板、一个包含用于手动创建 Athena 表的 SQL 的 SQL 文件,以及一个包含用于检查 AWS CUR 刷新状态的 SQL 的文件。这些文件使用以下命名约定。

<example-report-prefix>/<example-report-name>/<example-report-name>/yyyymmdd-yyyymmdd/crawler-cfn.yml <example-report-prefix>/<example-report-name>/<example-report-name>/yyyymmdd-yyyymmdd/<example-report-name>-create-table.sql <example-report-prefix>/<example-report-name>/<example-report-name>/yyyymmdd-yyyymmdd/<cost_and_usage_data_status>