

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# 分配额外的计算资源来执行自动数据库优化
<a name="t_extra-compute-autonomics"></a>

自主处理可以提高集群上的查询性能，并有助于管理存储成本和优化。您可以选择分配额外的计算资源，以确保自主处理功能始终如一地运行，即使在高流量时期也是如此，从而从优化中受益。请注意，使用这些额外资源运行的自主处理会计费。有关对自主处理计费的更多信息，请参阅[自主处理操作的计费](t_autonomics-billing.md)和 [Amazon Redshift 定价](https://aws.amazon.com/redshift/pricing/)。

 如果禁用了用于自主处理的额外计算资源，Amazon Redshift 会在系统负载较高时段临时暂停自主处理操作，以便最大限度地减少对并发工作负载的影响，直到有足够的资源来运行这些操作而不会对用户查询产生负面影响，这样可能影响性能。

## 管理用于自主处理的额外计算资源
<a name="t_extra-compute-autonomics_enable"></a>

默认情况下，对于预置集群和无服务器工作组，禁用用于自主处理的额外计算资源，但采用 AI 驱动的扩展和优化的无服务器工作组除外。对于采用 AI 驱动的扩展和优化的无服务器工作组，将始终根据您的性价比概况，自动启用和管理用于自主处理的额外计算资源。

您可以选择在创建集群或工作组期间或之后启用额外的计算资源。

### 使用 Amazon Redshift 控制台管理预置集群上用于自主处理的额外计算资源
<a name="t_extra-compute-autonomics_enable_provisioned_console"></a>

在创建新集群时，您可以通过在**自主处理配置**面板中选择**启用额外计算**，来启用用于自主处理的额外计算资源。要实现此目的，应按照以下步骤进行：
+ 选择**创建集群**。
+ 在**自主处理配置**面板中，选择**启用额外计算**。
+ 您将创建一个启用了额外计算的集群。

有关更多信息，请参阅《Amazon Redshift 管理指南》**中的[创建集群](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html)。

要在创建集群后启用额外的计算资源，请执行以下操作：
+ 在 Amazon Redshift 控制台中导航到集群。
+ 在集群详细信息页面中，从**操作**下拉菜单中选择**编辑自主处理配置**。
+ 选择**启用额外计算**。

### 使用 AWS CLI 管理预置集群的额外计算自主处理
<a name="t_extra-compute-autonomics_enable_provisioned_cli"></a>

要创建具有用于自主处理的额外计算资源的预置集群，请使用带 `extra-compute-for-automatic-optimization` 选项的 `create-cluster` 命令。

```
aws redshift create-cluster --cluster-identifier <value> \
--node-type <value> \
--cluster-type <value> \
--master-username <value> \
--master-user-password <value> \
--extra-compute-for-automatic-optimization \
--region <value>
```

要在现有预置集群上启用用于自主处理的额外计算资源，请使用带 `extra-compute-for-automatic-optimization` 选项的 `modify-cluster` 命令。

```
aws redshift modify-cluster --cluster-identifier <value> \
--extra-compute-for-automatic-optimization \
--region <value>
```

要在现有预置集群上禁用用于自主处理的额外计算资源，请使用带 `no-extra-compute-for-automatic-optimization` 选项的 `modify-cluster` 命令。

```
aws redshift modify-cluster --cluster-identifier <value> \
--no-extra-compute-for-automatic-optimization \
--region <value>
```

### 使用 Amazon Redshift 控制台管理无服务器工作组的额外计算自主处理
<a name="t_extra-compute-autonomics_enable_serverless_console"></a>

在创建新的工作组时，您可以通过在**自主处理配置**面板中选择**启用额外计算**，来启用用于自主处理的额外计算资源。
+ 选择 **Create workgroup (创建工作组)**。
+ 在**步骤 1** 中，在**自主处理配置**面板中选择**启用额外计算**。
+ 您将创建一个启用了额外计算的无服务器工作组。

**注意**  
如果您选择了**性价比目标**，则**启用额外计算**选项可能不可用。之所以如此，是因为：对于采用 AI 驱动的扩展和优化的无服务器工作组，将根据您的性价比概况，自动启用和管理用于自主处理的额外计算资源。

要在创建工作组后启用额外的计算资源，请执行以下操作：
+ 在 Amazon Redshift Serverless 控制台中导航到该工作组。
+ 在工作组的详细信息页面上，从**操作**下拉菜单中选择**编辑自主处理配置**。
+ 选择**启用额外计算**。

**注意**  
如果工作组已设置了**性价比目标**，则**编辑自主处理配置**选项可能会显示为灰色。之所以如此，是因为：对于采用 AI 驱动的扩展和优化的无服务器工作组，将根据您的性价比概况，自动启用和管理用于自主处理的额外计算资源。

### 使用 AWS CLI 管理无服务器工作组的额外计算自主处理
<a name="t_extra-compute-autonomics_enable_serverless_cli"></a>

要创建具有为自主处理分配的额外计算资源的无服务器工作组，请使用带 `extra-compute-for-automatic-optimization` 选项的 `create-workgroup` 命令。

```
aws redshift-serverless create-workgroup --base-capacity <value> \
--namespace-name <value> \
--workgroup-name <value> \
--extra-compute-for-automatic-optimization \
--region <value>
```

要在现有无服务器工作组上启用用于自主处理的额外计算资源，请使用带 `--extra-compute-for-automatic-optimization` 选项的 `update-workgroup` 命令。

```
aws redshift-serverless update-workgroup \
--workgroup-name <value> \
--extra-compute-for-automatic-optimization \
--region <value>
```

要在现有无服务器工作组上禁用用于自主处理的额外计算资源，请使用带 `--no-extra-compute-for-automatic-optimization` 选项的 `update-workgroup` 命令。

```
aws redshift-serverless update-workgroup \
--workgroup-name <value> \
--no-extra-compute-for-automatic-optimization \
--region <value>
```

## 使用额外的计算资源实现自主处理的成本控制
<a name="t_extra-compute-autonomics_cost-control"></a>

### 在预置集群上实现额外计算自主处理的成本控制
<a name="t_extra-compute-autonomics_cost-control_provisioned"></a>

您可以使用 Amazon Redshift 控制台，为预置集群上用于自主处理的额外计算资源设置用量限制。用于自主处理的额外计算资源不计入您可能已为并发扩展设置的任何限制，反之亦然。

要使用控制台为额外计算创建用量限制，请执行以下操作：
+ 导航到集群详细信息页面，然后从集群导航菜单中选择**维护**选项卡。
+ 向下滚动并单击**创建用量限制**，此时将导航到**管理用量限制**页面。
+ 在**管理用量限制**页面上，找到标题为**用于自动优化的额外计算的用量限制**的部分，然后选择**添加限制**。

要使用 AWS CLI 创建额外计算的用量限制，请使用带有功能类型 `extra-compute-for-automatic-optimization` 的 `create-usage-limit` 命令。对于此功能类型，`--limit-type` 参数必须设置为 `time`。

```
aws redshift create-usage-limit \
--cluster-identifier <value> \
--feature-type extra-compute-for-automatic-optimization \
--limit-type time \
--period <value> \
--amount <value> \
--breach-action <value>
```

`--period` 和 `--breach-action` 参数接受的值与其它用量限制相同。有关更多信息，请参阅《Amazon Redshift 管理指南》**中的[设置用量限制](https://docs.aws.amazon.com/redshift/latest/mgmt/rs-mgmt-set-limit-cluster.html)。

### 在无服务器工作组上实现额外计算自主处理的成本控制
<a name="t_extra-compute-autonomics_cost-control_serverless"></a>

Amazon Redshift Serverless 提供为无服务器工作组设置用量限制的功能，请参阅《Amazon Redshift 管理指南》**中的[设置用量限制，包括设置 RPU 限制](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-workgroup-max-rpu.html)。Amazon Redshift Serverless 中额外计算自主处理的用量包括在总体无服务器用量（含用户查询）中。

您可以使用 Amazon Redshift Serverless 控制台来查看无服务器工作组使用多少 RPU 秒数来实现额外的计算自主处理。要实现此目的，应按照以下步骤进行：
+ 导航到 **Amazon Redshift Serverless 控制台**。
+ 从侧边栏中选择**资源监控**。
+ 选择工作组。
+ 向下滚动到**自动优化的额外计算计费秒数**图表。

有关更多信息，请参阅《Amazon Redshift 管理指南》**中的 [Amazon Redshift Serverless 控制台](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-console.html)。

还可以查看 [SYS\$1SERVERLESS\$1USAGE](SYS_SERVERLESS_USAGE.md) 系统视图来找到 `charged_extra_compute_for_automatic_optimization_seconds`，其中记录了为自动优化而计费的累计计算单位（RPU）秒数。