

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 判斷容量需求
<a name="capacity-management-requirements"></a>

建立容量保留之前，您可以預估所需的容量，以便為其指派正確的 DPU 數目。而且，在使用保留後，您可能需要檢查保留的容量是不足還是過多。本主題說明可用來進行這些預估的技術，也說明評估用量和成本的一些 AWS 工具。

**Topics**
+ [預估所需的容量](#capacity-management-requirements-estimating)
+ [需要更多容量的跡象](#capacity-management-requirements-insufficient-capacity)
+ [檢查閒置容量](#capacity-management-requirements-idle-capacity)
+ [監控 DPU 使用量](#capacity-management-requirements-monitoring-dpu-consumption)

## 預估所需的容量
<a name="capacity-management-requirements-estimating"></a>

預估容量需求時，考慮兩個觀點非常有用：特定查詢可能需要多少容量，以及一般需要多少容量。

### 預估每個查詢的容量需求
<a name="capacity-management-requirements-estimating-query"></a>

若要判斷查詢可能需要的 DPU 數目，您可以使用下列指導方針：
+ DDL 查詢會消耗 4 個 GPU。
+ DML 查詢會消耗 4 到 124 個 GPU。

Athena 可判斷提交查詢時 DML 查詢所需的 DPU 數目。數目會根據資料大小、儲存格式、查詢建構和其他因素而異。一般而言，Athena 會嘗試選取最低、最有效率的 DPU 數目。如果 Athena 判斷需要更多的運算能力才能順利完成查詢，則會增加指派給查詢的 DPU 數目。

### 預估工作負載特定容量需求
<a name="capacity-management-requirements-estimating-workload"></a>

若要判斷同時執行多個查詢時可能需要多少容量，請考慮下列資料表中的一般指導方針：


****  

| 並行查詢 | 所需的 DPU | 
| --- | --- | 
| 10 | 40 或以上 | 
| 20 | 96 或以上 | 
| 30 或以上 | 240 或以上 | 

請注意，您實際需要的 DPU 數目取決於您的目標和分析模式。例如，如果您想要立即開始查詢而不排入佇列，請判斷尖峰並行查詢需求，然後相應地佈建 DPU 數目。

您可以佈建比尖峰需求更少的 DPU，但在發生尖峰需求時可能會導致佇列。進行佇列時，Athena 會將您的查詢保存在佇列中，並在容量可用時執行查詢。

如果您的目標是在固定預算內執行查詢，您可以使用 [AWS Pricing Calculator](https://calculator.aws/#/addService/Athena) 來判斷適合您預算的 DPU 數目。

最後請記住，資料大小、儲存格式和查詢的寫入方式會影響查詢所需的 DPU。若要提高查詢效能，您可以壓縮或分割資料，或將其轉換為單欄式格式。如需詳細資訊，請參閱[最佳化 Athena 效能](performance-tuning.md)。

## 需要更多容量的跡象
<a name="capacity-management-requirements-insufficient-capacity"></a>

容量不足錯誤訊息和查詢佇列是指派容量不足的兩個指示。

如果您的查詢失敗並顯示容量不足錯誤訊息，則容量保留的 DPU 數目太低，無法滿足您的查詢要求。例如，如果您的保留具有 24 個 DPU，且執行的查詢需要 24 個以上的 DPU，則查詢將失敗。若要監控此查詢錯誤，您可以使用 Athena 的 [EventBridge 事件](athena-events.md)。嘗試新增更多 DPU，然後重新執行查詢。

如果有許多查詢排入佇列，則表示您的容量已被其他查詢充分利用。若要減少佇列，請執行下列任意一項：
+ 將 DPU 新增至您的保留，以提高查詢並行性。
+ 從保留中移除工作群組，以釋放容量供其他查詢使用。

若要檢查是否有過多的查詢佇列，請針對容量保留中的工作群組使用 Athena 查詢佇列時間 [CloudWatch 指標](query-metrics-viewing.md)。如果該值超過您偏好的閾值，您可以將 DPU 新增至容量保留。

## 檢查閒置容量
<a name="capacity-management-requirements-idle-capacity"></a>

若要檢查閒置容量，您可以減少保留中的 DPU 數目或增加其工作負載，然後觀察結果。

**若要檢查閒置容量**

1. 執行以下任意一項：
   + 減少保留中的 DPU 數目 (減少可用資源)
   + 將工作群組新增至您的保留 (增加工作負載)

1. 使用 [CloudWatch](query-metrics-viewing.md) 來測量查詢佇列時間。

1. 如果佇列時間增加超過理想水平，請執行下列任意一項
   + 移除工作群組
   + 將 DPU 新增至您的容量保留

1. 每次變更之後，請檢查效能和查詢佇列時間。

1. 繼續調整工作負載及/或 DPU 計數，以達到所需的平衡。

如果您不想將容量維持在偏好期間以外，您可以[取消](capacity-management-cancelling-a-capacity-reservation.md)保留並稍後建立另一個保留。但是，即使您最近取消了其他保留的容量，也無法保證請求新容量，而且建立新的保留需要一些時間。

## 監控 DPU 使用量
<a name="capacity-management-requirements-monitoring-dpu-consumption"></a>

查詢執行後，您可以檢視查詢使用的 DPU，以協助精簡容量預估。Athena 透過主控台、API 操作和 CloudWatch 提供 DPU 耗用指標。此資訊可協助您識別耗用比預期更多或更少資源的查詢，並根據實際資料最佳化容量配置。如需檢視和追蹤 DPU 使用量的詳細資訊，請參閱 [監控 DPU 用量](capacity-management-control-capacity-usage.md#capacity-management-monitor-dpu-usage)。

## 評估容量需求和成本的工具
<a name="capacity-management-requirements-tools"></a>

您可以在 中使用下列服務和功能 AWS 來測量您的 Athena 用量和成本。

### CloudWatch 指標
<a name="capacity-management-requirements-tools-cloudwatch-metrics"></a>

您可以將 Athena 設定為在工作群組層級將查詢相關指標發佈到 Amazon CloudWatch。為工作群組啟用指標後，工作群組查詢的指標會顯示在工作群組詳細資訊頁面的 Athena 主控台中。

如需有關發佈至 CloudWatch 的 Athena 指標及其維度的資訊，請參閱 [使用 CloudWatch 監控 Athena 查詢指標](query-metrics-viewing.md)。

### CloudWatch 用量指標
<a name="capacity-management-requirements-tools-cloudwatch-usage-metrics"></a>

您可使用 CloudWatch 用量指標，透過在 CloudWatch 圖表和儀表板中顯示目前的服務使用量狀況，瞭解您的帳戶如何使用資源。對於 Athena，用量可用性指標對應至 Athena AWS [的服務配額](service-limits.md)。您可以設定警示，在您的用量接近服務配額時發出警示。

如需詳細資訊，請參閱[使用 CloudWatch 監控 Athena 用量指標](monitoring-athena-usage-metrics.md)。

### Amazon EventBridge 事件
<a name="capacity-management-requirements-tools-eventbridge-events"></a>

您可以搭配使用 Amazon EventBridge 與 Amazon Athena，以接收有關查詢狀態的即時通知。當您提交的查詢變更狀態時，Athena 會將事件發布至 EventBridge，當中包含該查詢狀態轉換的相關資訊。您可以針對感興趣的事件撰寫簡單的規則，並在事件符合規則時採取自動化動作。

如需詳細資訊，請參閱下列資源。
+ [使用 EventBridge 監控 Athena 查詢事件](athena-events.md)
+ [什麼是 Amazon EventBridge？](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html)
+ [Amazon EventBridge 事件](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html) 

### Tags (標籤)
<a name="capacity-management-requirements-tools-tags"></a>

在 Athena 中，容量保留支援標籤。一個標籤均包含一个索引鍵和一個值。若要在 Athena 中追蹤您的成本，您可以使用 AWS產生的成本分配標籤。 AWS 會使用成本分配標籤來整理成本[和用量報告中](https://docs.aws.amazon.com/cur/latest/userguide/what-is-cur.html)的資源成本。這可讓您更輕鬆地分類和追蹤 AWS 成本。若要啟用 Athena 的成本分配標籤，請使用 [AWS 帳單與成本管理 主控台](https://console.aws.amazon.com/billing/)。

如需詳細資訊，請參閱下列資源。
+ [標記 Athena 資源](tags.md)
+ [啟用 AWS產生的成本分配標籤](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activate-built-in-tags.html)
+ [使用  AWS 成本分配標籤](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)