

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 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="serverless-billing-on-demand"></a>

**基本容量及其對帳單的影響**

執行查詢時，系統會根據指定期間內使用的容量來計費 (以每秒 RPU 小時進行計算)。沒有執行任何查詢時，則不會向您收取運算容量的費用。系統也會根據所儲存的資料量向您收取 Redshift 受管儲存 (RMS) 的費用。

在建立工作群組時，您可以選擇設定運算的**基本容量**。若要符合工作群組層級的工作負載性價比要求，請將現有工作群組的基本容量調高或調低。從**工作群組組態**中選取工作群組，然後選擇**限制**索引標籤，以使用主控台變更基本容量。

隨著查詢數量的增加，Amazon Redshift Serverless 會自動擴展以提供一致的效能。

**最大 RPU 時數使用限制**

為了讓 Amazon Redshift Serverless 的成本保持可預測性，您可以設定每天、每週或每月能夠使用的 **RPU 時數上限**。使用主控台或透過 API 即可設定此限制。達到限制時，您可以指定要在系統資料表中寫入日誌項目、接收警示或關閉使用者查詢。設定 RPU 時數上限有助於控制成本。RPU 時數上限的設定會同時在存取資料倉儲資料的查詢和存取外部資料 (例如 Amazon S3 中的外部資料表) 的查詢兩方面適用於工作群組。

以下是範例：

假設您每週設定 100 小時的限制。若要在主控台上執行此操作，請執行下列步驟：

1. 選擇您的工作群組，然後在**限制**標籤下選擇**管理用量限制**。

1. 新增用量限制、選擇**每週**頻率、持續時間為 **100** 小時，並將動作設定為**關閉使用者查詢**。

在此範例中，如果您達到一週 100 RPU 小時限制，則關閉查詢。

設定工作群組的 RPU 時數上限並不會限制工作群組的效能或運算資源。您可以隨時調整設定值，而不會中斷查詢作業。設定最大 RPU 時數的目標，是協助您符合價格和效能需求。如需無伺服器帳單的相關資訊，請參閱 [Amazon Redshift 定價](https://aws.amazon.com/redshift/pricing/)。



保留 Amazon Redshift Serverless 可預測成本的另一種方法是使用 AWS [成本異常偵測](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/)，以減少帳單意外的機會並提供更多控制。

**注意**  
[Amazon Redshift 定價計算器](https://calculator.aws/#/addService/Redshift)有助於估算定價。只要輸入所需的運算資源，其便會提供成本預覽。

## 設定最大容量以控制運算資源的成本
<a name="serverless-maximum-rpu-setting-billing"></a>

最大容量設定可作為 Amazon Redshift Serverless 可縱向擴展的 RPU 上限。此有助於控制運算資源的成本。與基本容量設定最小可用運算資源的方式類似，最大容量會設定 RPU 用量上限。這樣就能幫助您的支出符合您的計劃。最大容量特別適用於每個工作群組，並且隨時都會限制運算用量。

### 最大容量與 RPU 時數用量限制有何不同
<a name="serverless-maximum-setting-difference"></a>

 最大 RPU 時數限制和最大容量設定的目的在於控制成本。但他們透過不同的方式達成這個目標。以下幾點說明了不同之處：
+ *最大容量* — 此設定建立 Amazon Redshift Serverless 用於擴展目的之最高 RPU 數量。當需要自動運算擴展時，最大容量值較高可增強查詢輸送量。達到最大容量限制時，工作群組不會進一步縱向擴展資源。
+ *最大 RPU 時數用量限制* — 與最大容量不同，此設定不會設定容量上限。不過，此設定會確實執行其他動作來幫助您限制成本。其中包括將項目新增至記錄檔、通知您，或停止執行查詢 (如果您選擇的話)。

您可以專門使用最大容量，或者您可以使用 RPU 時數最大用量限制中的動作來補充容量。

### 最大容量使用案例
<a name="serverless-maximum-setting-billing-scenario"></a>

每個工作群組都可以有不同的最大容量設定。它可以幫助您執行預算編列要求。下列範例說明其運作方式：
+ 您的工作群組的基本容量設定為 256 個 RPU。整個月的大部分時間您的工作負載穩定在 256 RPU 以上。
+ 最大容量設定為 512 RPU。

假設您在三天期間內有非預期的大量使用率來產生臨機操作統計報告。在此情況下，您已設定最大容量來避免超過 512 RPU 的運算成本。執行此操作時，您可以確定運算容量不會超過此上限。

### 最大容量的使須知
<a name="serverless-maximum-setting-how-to"></a>

這些使用須知可協助您正確設定最大容量：
+ 每個 Amazon Redshift Serverless 工作群組都可以有不同的最大容量設定。
+ 如果您在一段時間內資源使用率非常高，並且最大容量設定為較低的 RPU 級別，如此可能會延遲工作負載處理，並導致使用者體驗不佳。
+ 設定最大容量設定並不會干擾執行查詢，即使在 RPU 用量很高時也是如此。它不會像用量限制一樣地運作，可以阻止查詢執行。它只會限制工作群組可用的運算資源。您可以在 Amazon Redshift Serverless 儀表板上檢視一段時間內使用的容量。如需有關檢視摘要資料的詳細資訊，請參閱[使用儀表板檢查 Amazon Redshift Serverless 摘要資料](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-dashboard.html)。
+ 最大容量設定為 5632 RPU。

### 如何設定最大容量
<a name="serverless-maximum-rpu-setting-how-to"></a>

您可以在主控台設定最大容量。對於既有的工作群組，您可以變更**工作群組組態**下的設定。您也可以使用 CLI 執行下列範例所示的命令來設定：

```
aws redshift-serverless update-workgroup --workgroup-name myworkgroup --max-capacity 512
```

這會為具有指定名稱的工作群組設定最大容量設定。設定完成後，您可以在主控台上檢查該值以進行驗證。您也可以使用 CLI 執行 `get-workgroup` 命令來檢查值。

您可以透過設定為 `-1` 來關閉最大容量設定，如下所示：

```
aws redshift-serverless update-workgroup --workgroup-name myworkgroup --max-capacity -1
```

## 監控 Amazon Redshift Serverless 用量和成本
<a name="serverless-billing-visualizing"></a>

有數種方式可以估算 Amazon Redshift Serverless 的用量和帳單。系統檢視會有幫助，因為系統中繼資料 (包括查詢和用量資料) 是及時的，而且您不需要進行任何設定即可查詢。CloudWatch 對於監控 Amazon Redshift Serverless 執行個體的用量也有幫助，並有其他功能可提供洞察和設定動作。

### 透過查詢系統檢視將用量視覺化
<a name="serverless-billing-visualizing-sysview"></a>

查詢 SYS\$1SERVERLESS\$1USAGE 系統資料表即可追蹤用量並取得查詢費用：

```
select trunc(start_time) "Day", 
(sum(charged_seconds)/3600::double 
precision) * <Price for 1 RPU> as cost_incurred 
from sys_serverless_usage 
group by 1 
order by 1
```

 此查詢會根據用量，提供 Amazon Redshift Serverless 每天產生的費用。

#### 用於決定用量和成本的用量注意事項
<a name="serverless-billing-visualizing-usage"></a>
+ 您只需就所執行的工作負載支付費用，計費基礎為每秒 RPU 小時，最低費用為 60 秒。
+ sys\$1serverless\$1usage 系統資料表中的記錄會顯示以 1 分鐘的時間間隔產生的成本。了解下列資料欄很重要：

  charged\$1seconds 資料欄：
  + 提供在時間間隔內收費的運算單位 (RPU) 秒數。結果裡面包括 Amazon Redshift Serverless 中的任何最低費用。
  + 具有交易完成後運算資源用量的相關資訊。因此，如果交易尚未完成，此資料欄的值可能會是 0。

  compute\$1seconds 資料欄：
  + 提供即時運算用量資訊。這不包括 Amazon Redshift Serverless 中的任何最低費用。因此，其可能會與間隔期間所計費的收費秒數有某種程度上的不同。
  + 顯示每筆交易期間的用量資訊 (即使交易尚未結束)，因此所提供的資料為即時資料。
+  在某些情況下，compute\$1seconds 為 0，但 charged\$1seconds 大於 0，反之亦然。這是由於在系統檢視中記錄資料的方式所產生的正常行為。若要更準確地呈現無伺服器使用情況詳細資訊，建議您彙總 SYS\$1SERVERLESS\$1USAGE 中的資料。

 如需監控資料表和檢視的相關資訊，請參閱[使用 Amazon Redshift Serverless 監控查詢和工作負載](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-monitoring.html)。

### 使用 CloudWatch 將用量視覺化
<a name="serverless-billing-visualizing-cw"></a>

 您可以使用 CloudWatch 中提供的指標來追蹤用量。針對 CloudWatch 所產生的指標為 `ComputeSeconds` (會指出當下這一分鐘使用的總 RPU 秒數) 和 `ComputeCapacity` (會指出該分鐘的總運算容量)。您也可以在 Redshift **Serverless 儀表板**上的 Redshift 主控台上找到用量指標。如需 CloudWatch 的相關資訊，請參閱[什麼是 Amazon CloudWatch？](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 