

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将报告数据加载到其他资源
<a name="cur-query-other"></a>

您可以将成本和使用情况报告上传到 Amazon Redshift 和 Amazon Quick，以分析您的 AWS 成本和使用情况。

**Topics**
+ [正在将报告数据加载到 Amazon Quick](#cur-query-other-qs)
+ [将报告数据加载到 Amazon Redshift](#cur-query-other-rs)

## 正在将报告数据加载到 Amazon Quick
<a name="cur-query-other-qs"></a>

您可以将成本和使用情况报告上传到 Amazon Quick。

有关上传到 Quick 的更多信息，请参阅*快速用户指南*中的[使用 Amazon S3 文件创建数据集](https://docs.aws.amazon.com/quicksight/latest/user/create-a-data-set-s3.html)。

## 将报告数据加载到 Amazon Redshift
<a name="cur-query-other-rs"></a>

本节介绍如何将 AWS CUR 上传到 Amazon Redshift 以分析 AWS 您的成本和使用情况。

**重要**  
Amazon Redshift 列不区分大小写，并具有比用户定义的标签更严格的字符限制。为了防止 Amazon Redshift 和用户定义的标签之间发生冲突，请使用标签`userTag0``userTag1``userTag2`、等 AWS 替换您的标签。在创建 Amazon Redshift 表并将报告上传到该表之后，您可以创建一个 Amazon Redshift 表，该表将定义的标签映射到您用户定义 AWS的标签。该标签表使您可以查找您的原始标签。  
例如，如果您具有 `OWNER` 和 `Owner` 标签，Amazon Redshift 不允许您创建的表包含两个名为“owner”的列。相反，您应创建包含列 `userTag0` 和 `userTag1` (而不是 `OWNER` 和 `Owner`) 的报告表，然后创建包含列 `remappedUserTag` 和 `userTag` 的表。该`remappedUserTag`列存储 AWS定义的标签`userTag0`和`userTag1`，`userTag`列存储您的原始标签，`OWNER`以及 `Owner` 

AWS 提供了用于创建 Amazon Redshift 表、上传报告、创建标签表以及将所有标签行插入标签表的命令。这些命令在 S3 中与清单`RedshiftCommands.sql`文件一起存储的文件以及账单和成本管理控制台的 **Redshift 文件** **Helper 文件**中提供给您。 AWS 还提供了一个 RedshiftManifest文件，用于控制哪些文件在上传 RedshiftCommand 文件时报告命令。删除或删除 RedshiftManifest 文件会破坏 RedshiftCommands文件中的复制命令。

**在账单和成本管理控制台中查找 `RedshiftCommands.sql` 文件**

1. 打开账单与成本管理控制台，网址为 [https://console.aws.amazon.com/costmanagement/](https://console.aws.amazon.com/costmanagement/)。

1. 在导航窗格中，在**旧版页面**下面，选择**成本和使用情况报告**。

1. 选择您要上传到 Amazon Redshift 的报告。

1. 在**您已启用在以下服务中查看报告:** 旁边，选择 **Amazon Redshift**。

1. 从对话框中选择命令并将其粘贴到您的 SQL 客户端。

以下过程假设您熟悉数据库和 Amazon Redshift。

**将成本和使用情况报告上传到 Amazon Redshift**

1. 创建一个 Amazon Redshift 集群。

   有关更多信息，请参阅《Amazon Redshift 管理指南》中的[创建集群](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster)。**

1. 登录 AWS 管理控制台 并打开 Amazon S3 控制台，网址为[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 导航到存储 AWS CUR 的 Amazon S3 位置。

1. 打开 `RedshiftCommands.sql` 文件。

   该文件包含自定义命令，用于创建 Amazon Redshift 表、从 Amazon S3 上传 AWS CUR 以及创建允许将用户定义的标签导入 Amazon Redshift 的标签表。

1. 在`copy`命令中，*<AWS\$1ROLE>*替换为有权访问存储 CUR 的 Amazon S3 存储桶的 IAM 角色的 ARN。 AWS 

1. *<S3\$1BUCKET\$1REGION>*替换为您的 Amazon S3 存储桶所在的区域。例如 `us-east-1`。

1. 使用 SQL 客户端连接到群集。

   有关更多信息，请参阅《Amazon Redshift 管理指南》中的[访问 Amazon Redshift 集群和数据库](https://docs.aws.amazon.com/redshift/latest/mgmt/using-rs-tools.html)。**

1. 按以下顺序将 SQL 命令从 `RedshiftCommands.sql` 文件复制到您的 SQL 客户端：
   + create table - 该命令创建一个 Amazon Redshift 表，并自定义其架构以与您的报告匹配。
   + copy-此命令使用提供的 IAM 角色将 AWS CUR 文件从 S3 上传到 Amazon Redshift。
   + create tag table - 此命令将创建一个表，该表允许您将 AWS定义的标签映射到用户定义的标签。
   + insert - 这些命令会将用户定义的标签插入到标签表。

1. 将 AWS CUR 中的所有数据复制到 Amazon Redshift 后，您可以使用 SQL 查询数据。有关在 Amazon Redshift 中查询数据的更多信息，请参阅《Amazon Redshift 数据库开发人员指南》中的 [Amazon Redshift SQL](https://docs.aws.amazon.com/redshift/latest/dg/c_redshift-sql.html)。**

**注意**  
成本和使用情况报告中的列数可能会每月发生变化，例如，在创建新的成本分配标签时，或者在服务添加新的产品属性时。我们建议您每月将 AWS CUR 中的数据复制到一个新表中，然后将您感兴趣的列复制到单独的 month-by-month表中。