跨区域查询 - Amazon Athena

跨区域查询

Athena 支持在 AWS 区域 中查询 Amazon S3 数据,此区域与您使用 Athena 的区域不同。若移动数据不可行或没有权限时,或者您想跨多个区域查询数据,则可以选择跨区域查询。即使 Athena 在特定区域不可用,也可以从另一个可使用 Athena 的区域查询该地区的数据。

若要查询某个区域中的数据,即使 Amazon S3 数据不属于您的账户,也必须在该区域启用您的账户。对于某些区域 [例如美国东部(俄亥俄)],创建账户时会自动启用您对该区域的访问权限。其他区域要求您的账户在使用之前必须“选择加入”该区域。有关要求选择加入的区域列表,请参阅《Amazon EC2 用户指南》中的可用区域。有关选择加入区域的特定说明,请参阅 Amazon Web Services 一般参考 中的管理 AWS 区域

注意事项和限制

  • 数据访问权限 – 若要跨地区成功查询 Athena 的 Amazon S3 数据,您的账户必须具有读取数据的权限。若您要查询的数据属于另一个账户,则此其他账户必须授予您对包含该数据的 Amazon S3 位置的访问权限。

  • 数据传输费 – 跨区域查询可能会收取 Amazon S3 数据传输费。运行查询可能导致传输的数据超过数据集的大小。我们建议您首先测试对数据子集的查询,然后查看 AWS Cost Explorer 中的成本。

  • AWS Glue – 您可以跨区域使用 AWS Glue。跨区域 AWS Glue 流量可能收取额外费用。有关更多信息,请参阅 AWS Glue 大数据博客中的创建跨账户和跨区域 AWS 连接

  • Amazon S3 加密选项 – SSE-S3 和 SSE-KMS 加密选项支持跨区域查询;CSE-KMS 不支持跨区域查询。有关更多信息,请参阅 支持的 Amazon S3 加密选项

  • 联合查询 - 不支持跨 AWS 区域 使用联合查询。

  • 中国区域 – 中国区域不支持跨区域查询。

只要满足上述条件,您就可以创建一个指向自己指定的 LOCATION 值的 Athena 表,并透明地查询数据。不需要特殊语法。有关创建 Athena 表的信息,请参阅在 Athena 中创建表