简体   繁体   English

在 redshift 中执行跨数据库联合查询是否可行?

[英]Is it feasible to perform a cross database federated query in redshift?

while cross database queries (in ra3 node based clusters) and federated queries individually seem to work, together it seems that they won't work.虽然跨数据库查询(在基于 ra3 节点的集群中)和联合查询单独似乎可以工作,但它们似乎一起不起作用。 I am most probably missing something, hence the question.我很可能遗漏了一些东西,因此提出了这个问题。 Below are the details:以下是详细信息:

  • RDS Aurora MySQL has a database say DB1 RDS Aurora MySQL 有一个数据库说 DB1
  • Redshift cluster say c1 has databases say RSDB1 and RSDB2 Redshift集群说c1有数据库说RSDB1和RSDB2
  • I am able to configure DB1 as external schema in RSDB1 say ext_mdb and able to query as well ex: as below我能够将 DB1 配置为 RSDB1 中的外部模式,比如 ext_mdb 并且能够查询例如:如下

select count(1) from ext_mdb.Table2; select count(1) 来自 ext_mdb.Table2;

select count(1) from RSDB1.ext_mdb.Table2;来自 RSDB1.ext_mdb.Table2 的 select 计数(1); # this also works # 这也有效

  • I am also able to use the cross databases query schema RSDB1.public.Table1 while I am connected to RSDB2.当我连接到 RSDB2 时,我还可以使用跨数据库查询模式 RSDB1.public.Table1。
  • When I try querying RSDB1.ext_mdb.Table2 from RSDB2 fails with below error当我尝试从 RSDB2 查询 RSDB1.ext_mdb.Table2 失败并出现以下错误

select count(1) from RSDB1.ext_mdb.Table2;来自 RSDB1.ext_mdb.Table2 的 select 计数(1); # this doesn't from RSDB2 # 这不是来自 RSDB2

ERROR: Relation Table2 does not exist in the database.错误:数据库中不存在关系表 2。

It seems like a limitation for cross database queries in redshift at the moment from what I understood reading this: https://docs.aws.amazon.com/redshift/latest/dg/cross-database_limitation.html从我的理解来看,这似乎是红移中跨数据库查询的限制

where it says它说的地方

Amazon Redshift doesn't support query catalog objects on AWS Glue or federated databases. Amazon Redshift 不支持在 AWS Glue 或联合数据库上查询目录对象。 To query these objects, first create external schemas that refer to those external data sources in each database.要查询这些对象,首先创建引用每个数据库中的那些外部数据源的外部模式。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM