

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

# 設定每一查詢和每一工作群組資料用量控制
<a name="workgroups-setting-control-limits-cloudwatch"></a>

 Athena 可讓您設定兩種類型的成本控制：每一查詢限制和每一工作群組限制。對於每個工作群組，您只能設定一個每一查詢限制和多個每一工作群組限制。
+ **每一查詢控制限制**指定每次查詢所掃描的資料總量。如果工作群組中執行的任何查詢超過此限制，則會取消。您在工作群組中只能建立一個每一查詢控制限制，它會套用到其中執行的每個查詢。如果您需要變更限制，請編輯限制。如需詳細步驟，請參閱[建立每一查詢資料用量控制](#configure-control-limit-per-query)。
+ **工作群組整體資料用量控制限制**指定在指定期間內針對此工作群組中執行的所有查詢所掃描的資料總量。您可以為每一工作群組建立多個限制。工作群組整體查詢限制可讓您針對工作群組中執行的查詢所掃描的資料，在每小時或每日彙總上設定多個閾值。

  如果掃描的資料總量超過閾值，您可以將通知推送至 Amazon SNS 主題。若要這麼做，請在 Athena 主控台中設定 Amazon SNS 警示和動作，以便在超過限制時通知管理員。如需詳細步驟，請參閱[建立每一工作群組資料用量控制](#configure-control-limit-per-workgroup)。對於 Athena 從 CloudWatch 主控台發布的任何指標，您也可以建立警示和動作。例如，您可以對失敗的查詢次數設定提醒。如果次數超過特定閾值，這個提醒可以觸發將電子郵件寄給管理員。如果超過限制，將會有動作將 Amazon SNS 警示通知傳送給指定的使用者。

  您可以採取的其他動作：
  + 調用 Lambda 函數。如需詳細資訊，請參閱《Amazon Simple Notification Service 開發人員指南》**中的[使用 Amazon SNS 通知叫用 Lambda 函數](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda-as-subscriber.html)。
  + 停用工作群組，以停止執行任何進一步的查詢。如需這些步驟，請參閱 [啟用或停用工作群組](workgroups-enabled-disabled.md)。

每一查詢限制和每一工作群組限制彼此獨立。每當超過任一限制時就會採取指定的動作。如果兩個或更多使用者在同一個工作群組中同時執行查詢，則可能每個查詢都不超過任何指定的限制，但掃描的資料總數超過每一工作群組的資料用量限制。在這種情況下，Amazon SNS 警示會傳送給使用者。

## 建立每一查詢資料用量控制
<a name="create-a-per-query-data-usage-control"></a><a name="configure-control-limit-per-query"></a>

**建立每一查詢資料用量控制**

每一查詢控制限制指定每次查詢所掃描的資料總量。如果工作群組中執行的任何查詢超過此限制，則會取消。已取消的查詢會按照 [Amazon Athena 定價](https://aws.amazon.com/athena/pricing/)計費。
**注意**  
如果是已取消或失敗的查詢，Athena 可能已將局部結果寫入 Amazon S3。在這種情況下，Athena 不會從存放結果的 Amazon S3 字首中刪除這些局部結果。您必須移除含有局部結果的 Amazon S3 字首。Athena 使用 Amazon S3 分段上傳，將資料寫入 Amazon S3。我們建議您設定儲存貯體生命週期政策，指定當查詢失敗時結束分段上傳。如需詳細資訊，請參閱《Amazon Simple Storage Service 使用者指南》**中的[使用儲存貯體生命週期政策中止未完成的分段上傳](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config)。
在某些情況下，Athena 可能會自動重試查詢執行。在大多數情況下，這些查詢能夠成功完成，且查詢 ID 會標記為 `Completed`。這些查詢可能在初始嘗試期間已寫入部分結果，並可能產生未完成的分段上傳。

您在工作群組中只能建立一個每一查詢控制限制，它會套用到其中執行的每個查詢。如果您需要變更限制，請編輯限制。

1. 前往 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 開啟 Athena 主控台。

1. 在導覽窗格中，選擇 **Workgroups** (工作群組)。

1. 從清單中選擇工作群組名稱。

1. 在**執行控制項**索引標籤上，選擇**編輯控制項**。

1. 編輯**資料掃描限制**的值。
   + 指定介於 10 MB （最小值） 和 7 EB （最大值） 之間的值。
   + 從下拉式清單中選取單位值 （例如 **Kilobytes KB** 或 **Exabytes EB**)。
**注意**  
預設動作是在查詢超過限制時取消查詢。此設定無法變更。

1. 選擇**儲存**以立即套用您的變更。

## 建立或編輯每一工作群組資料用量提醒
<a name="create-a-per-workgroup-data-usage-alert"></a><a name="configure-control-limit-per-workgroup"></a>

**建立或編輯每一工作群組資料用量提醒**

當工作群組中執行的查詢在特定時段內掃描指定數量的資料時，您可以設定多個提醒閾值。提醒會透過 Amazon CloudWatch 警示實作，並套用於工作群組中的所有查詢。達到閾值後，您可以讓 Amazon SNS 向您指定的使用者傳送電子郵件。達到閾值時，查詢作業不會自動取消。

1. 前往 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 開啟 Athena 主控台。

1. 如果未顯示主控台的導覽窗格，請選擇左側的展開選單。

1. 在導覽窗格中，選擇 **Workgroups** (工作群組)。

1. 從清單中選擇工作群組名稱。

1. 選擇 **Edit** (編輯) 以編輯工作群組的設定。

1. 向下捲動到並展開 **Workgroup data usage alerts - optional** (工作群組資料用量提醒 - 選用)。

1. 選擇 **Add alert** (新增提醒)。

1. 針對 **Data usage threshold configuration** (資料用量閾值組態)，指定值，如下所示：
   + 針對 **Data threshold** (資料閾值)，指定數字，然後從下拉式清單中選取單位值。
   + 對於 **Time period** (期間)，請從下拉式清單中選擇期間。
   + 針對 **SNS topic selection** (SNS 主題選擇)，請從下拉式清單中選擇 Amazon SNS 主題。或者，選擇 **Create SNS topic** (建立 SNS 主題)，直接前往 [Amazon SNS 主控台](https://console.aws.amazon.com/sns/v2/home)，建立 Amazon SNS 主題，並為 Athena 帳戶中的其中一個使用者設定主題訂閱。如需詳細資訊，請參閱《Amazon Simple Notification Service 開發人員指南》**中的 [Amazon SNS 入門](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html)。

1. 如果您正在建立新提醒，請選擇 **Add alert** (新增提醒)，或選擇 **Save** (儲存) 來儲存現有提醒。