使用并发扩展
使用并发扩展功能,您可以支持成千上万的并发用户和并发查询,同时提供始终如一的快速查询性能。开启并发扩展后,Amazon Redshift 会自动增加额外的集群容量来处理增多的读取查询和写入查询。不管查询在主集群上运行还是在并发扩展集群上运行,用户都将看到最新的数据。
您可以通过配置 WLM 队列来管理将哪些查询发送到并发扩展集群。开启并发扩展后,符合条件的查询将发送到并发扩展集群,而不是排队等待。
仅当并发扩展集群正在主动运行查询时,您才需要为其付费。有关定价的更多信息,包括费用如何累积和最低费用,请参阅并发扩展定价
并发扩展功能
为 WLM 队列开启并发扩展时,它将适用于读取操作,如控制面板查询。它还适用于常用的写操作,例如用于数据摄入和处理的语句。
写操作的并发扩展功能
并发扩展支持经常使用的写操作,例如提取、转换和加载 (ETL) 语句。当您希望在集群收到大量请求时保持一致的响应时间时,写操作的并发扩展特别有用。它提高了在主集群上争夺资源的写操作的吞吐量。
并发扩展支持 COPY、INSERT、DELETE、UPDATE 和 CREATE TABLE AS (CTAS) 语句。此外,并发扩展支持不使用聚合的 MV 的实体化视图刷新。不支持其他数据处理语言 (DML) 语句和数据定义语言 (DDL) 语句。如果不支持的写入语句(如 CREATE without TABLE AS)包含在支持的写入语句之前的显式事务中,则所有写入语句都不会在并发扩展集群上运行。
当您为并发扩展累计积分时,此积分应计适用于读取和写操作。
并发扩展的限制
以下是使用 Amazon Redshift 并发扩展的限制:
-
它不支持查询使用交错排序键的表。
-
它不支持查询临时表。
-
它不支持访问受限制性网络或 Virtual Private Cloud (VPC) 配置保护的外部资源的查询。
-
它不支持包含 Python 用户定义函数(UDF)和 Lambda UDF 的查询。
-
它不支持访问系统表、PostgreSQL 目录表或非备份表的查询。
-
在实施限制性 IAM 策略权限时,它不支持访问外部资源的 COPY 或 UNLOAD 查询。这包括应用于资源(例如 Amazon S3 存储桶或 DynamoDB 表)或源的权限。IAM 源可以包括:
aws:sourceVpc
– 一个 VPC 源。aws:sourceVpce
– 源 VPC 端点。aws:sourceIp
– 源 IP 地址。
在某些情况下,您可能需要删除限制资源或源的权限,以便将访问资源的 COPY 和 UNLOAD 查询发送到并发扩展集群。
有关资源策略的更多信息,请参阅《AWS Identity and Access Management 用户指南》中的策略类型,以及使用存储桶策略控制从 VPC 端点的访问。
-
DDL 操作(如 CREATE TABLE 或 ALTER TABLE)不支持 Amazon Redshift 并发扩展用于写操作。
-
它不支持 COPY 命令的 ANALYZE。
-
它不支持对 DISTSTYLE 设置为 ALL 的目标表进行写操作。
-
它不支持以下文件格式的 COPY:
Parquet
ORC
-
它不支持对具有身份列的表进行写操作。
-
Amazon Redshift 支持仅在 Amazon Redshift RA3 节点上执行写操作的并发扩展,特别是 ra3.16xlarge、ra3.4xlarge 和 ra3.xlplus。其他节点类型不支持写操作的并发扩展。
有关并发扩展的更多信息,请参阅《Amazon Redshift 管理指南》中的以下主题。