使用并发扩展 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用并发扩展

使用并发扩展功能,您可以支持成千上万的并发用户和并发查询,同时提供始终如一的快速查询性能。开启并发扩展后,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 查询发送到并发扩展集群。

    有关资源策略的更多信息,请参阅《Amazon 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 管理指南》中的以下主题。