本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
處理資料匯出
在以下各節中,您將找到有關處理資料匯出的資訊。
設定 Amazon Athena
與成本和用量報告 (CUR) 不同,資料匯出不提供用於設定 Athena 查詢匯出的 SQL 檔案。您需要使用 CloudFormation 範本進行資料匯出 (請參閱選項 1) 或手動設定 Athena (請參閱選項 2)。
(選項 1) 使用 CloudFormation 範本:若要尋找 CloudFormation 範本和使用資料匯出設定 Athena 的指示,請參閱《雲端智慧儀表板架構》中的資料匯出
(選項 2) 使用 AWS Glue 爬蟲程式來建置 Athena 的資料表和分割區:建立 Athena 的 CUR 或碳排放資料匯出時,我們建議使用 Apache Parquet 檔案格式;它提供更好的壓縮和資料欄導向儲存,有助於較小和較便宜的 Athena 查詢。覆寫交付偏好設定是必要的,因此當您使用 Amazon Athena 執行查詢時,每個每月分割區一律只包含每個檔案的一個副本,不會出現重複的明細項目。
我們也建議使用 AWS Glue 搭配 Glue 爬蟲程式,將您的資料載入 Athena。
使用 Glue 爬蟲程式建置 Athena AWS 的資料表和分割區
-
使用下列資料匯出交付選項建立 CUR 2.0 或碳排放的匯出:
-
壓縮類型和檔案格式:Parquet - Parquet
-
檔案版本控制:覆寫現有的資料匯出檔案
-
-
在 Athena 中,使用筆記本編輯器搭配 Trino SQL,然後選擇建立以建立具有「AWS Glue 爬蟲程式」的資料表。使用 Glue 爬蟲程式工作流程,指向要在 s3://<bucket-name>/<prefix>/<export-name>/data 資料夾上執行的 Glue 爬蟲程式,以自動載入指定匯出至 Athena 的所有已交付分割區。
-
Glue 爬蟲程式完成後,您可以使用 Athena 在 Glue 爬蟲程式建立的資料表上寫入查詢。
設定 Amazon Redshift
Amazon Redshift 是雲端資料倉儲,可在佈建容量或無伺服器模型中存取。Amazon Redshift 提供快速查詢效能,以處理來自資料匯出的資料。
目前,資料匯出不提供用於設定 Redshift 以查詢匯出的 SQL 檔案,就像成本和用量報告 (CUR) 一樣。不過,您仍然可以手動設定 Redshift 來查詢匯出。我們建議您使用 Redshift 的 gzip/csv 壓縮和檔案格式。
如需設定 Redshift 的資訊,請參閱《Amazon Redshift 入門指南》。
處理 CUR 2.0 的建議 SQL 查詢
在將 CUR 2.0 匯出資料載入 Amazon Athena 或 Amazon Redshift 等資料分析工具後,您可以處理它,以取得成本和用量洞察。 AWS Well-Architected 實驗室提供 CUR 查詢程式庫,可用於處理 CUR。如需詳細資訊,請參閱 AWS CUR 查詢程式庫
請注意以下兩個有關 SQL 查詢的資訊:
-
Well-Architected Labs SQL 查詢無法在資料匯出查詢欄位中運作,因為資料匯出不支援彙總和這些查詢中使用的一些其他 SQL 語法。
-
Well-Architected Labs SQL 查詢只有在您尚未從預設名稱重新命名資料欄時才有效。根據查詢,您可能需要使用點運算子將某些產品資料欄查詢為不同的資料欄。如需詳細資訊,請參閱資料查詢-SQL 查詢和資料表組態。
處理碳排放資料匯出的建議 SQL 查詢
若要取得每個 payer_account_id 的總碳排放量:
SELECT payer_account_id, SUM(total_mbm_emissions_value) AS total_emissions FROM "ccft-data-exports"."ccft-data-exports-data" -- change to your table name GROUP BY payer_account_id ORDER BY total_emissions DESC;
若要取得每個 payer_account_id 和每個 product_code 的總碳排放量:
SELECT payer_account_id, product_code, SUM(total_mbm_emissions_value) AS total_emissions FROM "ccft-data-exports"."ccft-data-exports-data"-- change to your table name GROUP BY payer_account_id, product_code ORDER BY total_emissions DESC;
若要取得每個 payer_account_id 和每個 region_code 的總碳排放量:
SELECT payer_account_id, region_code, SUM(total_mbm_emissions_value) AS total_emissions FROM "ccft-data-exports"."ccft-data-exports-data" -- change to your table name GROUP BY payer_account_id, region_code ORDER BY total_emissions DESC;