注意事项
在 Amazon Redshift 中使用跨数据库查询功能时,请考虑以下事项:
Amazon Redshift 支持对 ra3.4xlarge、ra3.16xlarge 和 ra3.xlplus 节点类型进行跨数据库查询。
Amazon Redshift 支持在同一 Amazon Redshift 集群中的一个或多个数据库中连接表或视图中的数据。
-
Amazon Redshift Serverless 支持与 Amazon Redshift 集群相同的跨数据库功能,因此,您可以跨无服务器命名空间中的一个或多个数据库联接来自表或视图的数据。
连接数据库上的事务中的所有查询都会读取另一个数据库中与事务开始时处于相同状态的数据。此方法有助于跨数据库提供查询事务一致性。Amazon Redshift 支持跨数据库查询的事务一致性。
要跨数据库获取元数据,请使用 SVV_ALL* 和 SVV_REDSHIFT* 元数据视图。您无法使用三部分表示法或外部架构来查询 information_schema 和 pg_catalog 下的跨数据库元数据表或视图。
限制
在 Amazon Redshift 中使用跨数据库查询功能时,请注意以下限制:
-
查询任何其他未连接的数据库上的数据库对象时,您只有对这些数据库对象的读取访问权限。
-
您无法查询在引用另一个数据库对象的其他数据库上创建的视图。
您只能在集群中的其他数据库的对象上创建后期绑定视图和具体化视图。您无法在集群中其他数据库的对象上创建常规视图。
Amazon Redshift 不支持具有列级权限的表进行跨数据库查询。
-
Amazon Redshift 不支持 AWS Glue 或联合数据库上的查询目录对象。要查询这些对象,请首先创建引用每个数据库中的这些外部数据来源的外部 schema。
-
不支持对具有交错排序键的表运行跨数据库查询。