在 Amazon Redshift 中使用联合查询来查询数据
通过在 Amazon Redshift 中使用联合查询,您可以跨操作数据库、数据仓库和数据湖查询和分析数据。利用联合查询功能,您可以将来自 Amazon Redshift 的对外部数据库中的实时数据的查询与跨 Amazon Redshift 和 Amazon S3 环境的查询相结合。联合查询可以使用 Amazon RDS for PostgreSQL、Amazon Aurora PostgreSQL 兼容版本、Amazon RDS for MySQL 和 Amazon Aurora MySQL 兼容版本中的外部数据库。
可以使用联合查询将实时数据整合到业务情报 (BI) 和报告应用程序中。例如,要使 Amazon Redshift 能够更轻松地摄入数据,您可以使用联合查询来执行以下操作:
-
直接查询操作数据库。
-
快速应用转换。
-
将数据加载到目标表中,而无需复杂的提取、转换、加载 (ETL) 管道。
为了减少网络上的数据移动并提高性能,Amazon Redshift 将联合查询的计算部分直接分发到远程操作数据库中。Amazon Redshift 还根据需要使用其并行处理能力来支持运行这些查询。
在运行联合查询时,Amazon Redshift 首先从领导节点建立与 RDS 或 Aurora DB 集群数据库实例的客户端连接来检索表元数据。从计算节点中,Amazon Redshift 使用下推谓词发出子查询并检索结果行。然后,Amazon Redshift 在计算节点之间分配结果行以供进一步处理。
有关发送到 Amazon Aurora PostgreSQL 数据库或 Amazon RDS for PostgreSQL 数据库的查询的详细信息将记录在系统视图 SVL_FEDERATED_QUERY 中。