本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon Athena CloudWatch 指標連
Amazon Athena CloudWatch 指標連接器可讓 Amazon Athena 使用 SQL 查詢 CloudWatch 指標資料。
如需將查詢量度 CloudWatch 從 Athena 本身發佈至的相關資訊,請參閱使用指標和事件控制成本並 CloudWatch 監控查詢。
必要條件
使用 Athena 主控台或 AWS Serverless Application Repository,將連接器部署到您的 AWS 帳戶 。如需詳細資訊,請參閱 部署資料來源連接器 或 使用 AWS Serverless Application Repository 部署資料來源連接器 。
參數
使用本節中的 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 擁塞控制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
(例如,p90
、AVERAGE
...),可供指標使用。
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.yamlPolicies
章節。以下清單摘要說明所需的許可。
-
Amazon S3 寫入存取 - 連接器需要 Amazon S3 中某個位置的寫入存取權,以便從大型查詢中溢寫結果。
-
Athena GetQueryExecution — 當上游 Athena 查詢終止時,連接器會使用此權限快速失敗。
-
CloudWatch 度量 ReadOnly — 連接器會使用此權限來查詢您的指標資料。
-
CloudWatch 記錄寫入 — 連接器會使用此存取權來寫入其診斷記錄。
效能
Athena CloudWatch Metric 連接器會平行處理查詢所需的記錄串流掃描,嘗試將 CloudWatch 量度的查詢最佳化。對於特定期間、量度、命名空間和維度篩選器,述詞下推會同時在 Lambda 函數和日誌內 CloudWatch 執行。
授權資訊
Amazon Athena CloudWatch 指標連接器專案是根據 Atache-
其他資源
如需有關此連接器的其他資訊,請造訪 GitHub .com 上的對應網站