Amazon Athena CloudWatch 指標連 - Amazon Athena

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

Amazon Athena CloudWatch 指標連

Amazon Athena CloudWatch 指標連接器可讓 Amazon Athena 使用 SQL 查詢 CloudWatch 指標資料。

如需將查詢量度 CloudWatch 從 Athena 本身發佈至的相關資訊,請參閱使用指標和事件控制成本並 CloudWatch 監控查詢

必要條件

參數

使用本節中的 Lambda 環境變數來設定指 CloudWatch 標連接器。

  • spill_bucket - 針對超過 Lambda 函數限制的資料,指定 Amazon S3 儲存貯體。

  • spill_prefix - (選用) 預設為指定的 spill_bucket 中名為 athena-federation-spill 的子資料夾。我們建議您在此位置設定 Amazon S3 儲存生命週期,以刪除超過預定天數或小時數的溢出。

  • spill_put_request_headers – (選用) 用於溢出的 Amazon S3 putObject 請求的請求標頭和值的 JSON 編碼映射 (例如,{"x-amz-server-side-encryption" : "AES256"})。如需其他可能的標頭,請參閱 Amazon 簡單儲存服務 API 參考PutObject中的。

  • kms_key_id - (選用) 依預設,任何溢出到 Amazon S3 的資料都會使用 AES-GCM 驗證加密模式和隨機產生的金鑰進行加密。為了讓您的 Lambda 函數使用 KMS 產生的更強大的加密金鑰,例如 a7e63k4b-8loc-40db-a2a1-4d0en2cd8331,您可以指定 KMS 金鑰 ID。

  • disable_spill_encryption - (選用) 當設定為 True 時,停用溢出加密。預設為 False,因此溢出 S3 的資料會使用 AES-GCM 進行加密 — 使用隨機產生的金鑰或 KMS 來產生金鑰。停用溢出加密可以提高效能,尤其是如果溢出位置使用伺服器端加密

此連接器也支援 AIMD 擁塞控制,以處理 CloudWatch 透過 Amazon Athena 查詢聯合開發套件建構的節流事件。ThrottlingInvoker您可以透過設定下列任何選用的環境變數來調整預設限流行為:

  • throttle_initial_delay_ms - 在第一個擁塞事件之後套用的初始呼叫延遲。預設值為 10 毫秒。

  • throttle_max_delay_ms - 呼叫之間的最大延遲。您可以透過將其分成 1000 毫秒來衍生 TPS。預設值為 1000 毫秒。

  • throttle_decrease_factor - Athena 降低呼叫速率的係數。預設值為 0.5

  • throttle_increase_ms— Athena 降低呼叫延遲的速率。預設值為 10 毫秒。

資料庫和資料表

Athena CloudWatch Metric 連接器會將您的命名空間、維度、量度和量度值對應到名為default的單一結構描述中的兩個表格。

指標資料表

metrics 資料表包含由命名空間、集合和名稱組合唯一定義的可用指標。metrics 資料表包含以下資料欄。

  • namespace - 包含命名空間的 VARCHAR

  • metric_name - 包含指標名稱的 VARCHAR

  • dimensions - STRUCT 物件的 LIST,由 dim_name (VARCHAR)dim_value (VARCHAR) 組成。

  • statistic - VARCH 統計資料的 LIST (例如,p90AVERAGE ...),可供指標使用。

metric_samples 資料表

metric_samples 資料表包含 metrics 資料表中每個指標的可用指標範例。metric_samples 資料表包含以下資料欄。

  • namespace - 包含命名空間的 VARCHAR

  • metric_name - 包含指標名稱的 VARCHAR

  • dimensions - STRUCT 物件的 LIST,由 dim_name (VARCHAR)dim_value (VARCHAR) 組成。

  • dim_name— 一個 VARCHAR 方便欄位,可用於輕鬆篩選單個維度名稱。

  • dim_value— 一個 VARCHAR 方便欄位,可用於輕鬆篩選單個維度值。

  • period - 一個表示指標「時段」的 INT 欄位 (以秒為單位) (例如,60 秒指標)。

  • timestamp - 表示指標範例所用 epoch 時間的 BIGINT 欄位 (以秒為單位)。

  • value - 包含範例值的 FLOAT8 欄位。

  • statistic - 包含範例統計類型的 VARCHAR (例如,AVERAGE 或者 p90)。

所需的許可

如需此連接器所需 IAM 政策的完整詳細資訊,請檢閱 athena-cloudwatch-metrics.yaml 檔案的Policies章節。以下清單摘要說明所需的許可。

  • Amazon S3 寫入存取 - 連接器需要 Amazon S3 中某個位置的寫入存取權,以便從大型查詢中溢寫結果。

  • Athena GetQueryExecution — 當上游 Athena 查詢終止時,連接器會使用此權限快速失敗。

  • CloudWatch 度量 ReadOnly — 連接器會使用此權限來查詢您的指標資料。

  • CloudWatch 記錄寫入 — 連接器會使用此存取權來寫入其診斷記錄。

效能

Athena CloudWatch Metric 連接器會平行處理查詢所需的記錄串流掃描,嘗試將 CloudWatch 量度的查詢最佳化。對於特定期間、量度、命名空間和維度篩選器,述詞下推會同時在 Lambda 函數和日誌內 CloudWatch 執行。

授權資訊

Amazon Athena CloudWatch 指標連接器專案是根據 Atache- 2.0 授權進行授權。

其他資源

如需有關此連接器的其他資訊,請造訪 GitHub .com 上的對應網站