首页 > 解决方案 > 带有 Redshift 的 Postgres 外部模式:我可以使用外部数据包装器吗?

问题描述

我有一个 Postgres 数据库,我想从我的 Redshift 集群中查询。我已经成功地用CREATE EXTERNAL SCHEMA.

但是架构本身是空的。我在查询编辑器的模式下拉列表中看不到任何表,当我尝试查询我知道存在的表时,我收到错误消息:

错误:表可能不存在或不受支持的关系类型代码:25000 上下文:查询:0 位置:pgclient.cpp:189 进程:padbmaster [pid=19735]

我怀疑这是因为这些表是外部表(从供应商的数据库复制)。有没有办法让 Redshift 识别这些表并让我查询它们?

标签: postgresqlamazon-redshift

解决方案


您的查询返回错误消息的原因可能是因为它永远无法访问您的远程数据库。我假设您已按照此处的所有适当步骤操作:https ://docs.aws.amazon.com/redshift/latest/dg/getting-started-federated.html

尝试在 Redshift 集群的“网络和安全”配置中启用增强型 VPC 路由

我遇到了同样的问题,即使我的 Postgres RDS 实例和 Redshift 集群在同一个 VPC 和子网组中,我也无法创建外部架构连接,直到启用增强型 VPC 路由。

相关线程:https ://forums.aws.amazon.com/thread.jspa?threadID=323013


推荐阅读