使用 Amazon Redshift 访问联合数据时的限制和注意事项 - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 Amazon Redshift 访问联合数据时的限制和注意事项

某些 Amazon Redshift 功能不支持对联合数据进行访问。您可以在下面找到相关的限制和注意事项。

以下是使用联合查询时的事务的注意事项:

  • 如果查询由联合表组成,则领导节点会在远程数据库上启动 READ ONLY REPEATABLE READ 事务。此事务在 Amazon Redshift 事务的持续时间内保留。

  • 领导节点通过调用 pg_export_snapshot() 创建远程数据库快照,并对受影响的表进行读锁定。

  • 计算节点启动事务,并使用在领导节点上创建的快照来向远程数据库发出查询。

以下是将联合查询与 Amazon Redshift 结合使用时的限制和注意事项:

  • 联合查询支持对外部数据源进行读取访问。无法在外部数据源中写入或创建数据库对象。

  • 在某些情况下,您可能访问与 Amazon Redshift 不同的 AWS 区域中的 Amazon RDS 或 Aurora 数据库。在这些情况下,您通常会因跨 AWS 地区传输数据而产生网络延迟和计费费用。我们建议您将 Aurora 全局数据库用于与 Amazon Redshift 集群位于同一 AWS 区域的本地终端节点。Aurora 全局数据库使用专用基础设施在任意两个 AWS 区域间进行基于存储的复制,典型延迟不到 1 秒。

  • 考虑访问 Amazon RDS 或 Aurora 的成本。例如,使用此功能访问 Aurora 时,Aurora 费用基于 IOPS。

  • 联合查询不允许从 RDS PostgreSQL 或 Aurora PostgreSQL 访问 Amazon Redshift。

  • 联合查询当前不支持通过具体化视图进行访问。

  • 联合查询仅在同时提供 Amazon Redshift 和 Amazon RDS 或 Aurora 的 AWS 区域中可用。

  • 联合查询当前不支持 ALTER SCHEMA。要更改 schema,请依次使用 DROPCREATE EXTERNAL SCHEMA

  • 联合查询不适用于并发扩展。

Amazon Redshift 外部 schema 引用了外部 RDS PostgreSQL 或 Aurora PostgreSQL 中的数据库。当它这样做时,以下限制将适用:

  • 创建引用 Aurora 的外部架构时,Aurora PostgreSQL 数据库必须为版本 9.6 或更高版本。

  • 创建引用 Amazon RDS 的外部架构时,Amazon RDS PostgreSQL 数据库必须为版本 9.6 或更高版本。