為ETL工作建立表格 - Amazon Athena

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

為ETL工作建立表格

您可以使用 Athena 建立 AWS Glue 可用於ETL工作的表格。 AWS Glue 工作執行ETL作業。 AWS Glue 工作會執行從來源擷取資料、轉換資料並將其載入目標的指令集。如需詳細資訊,請參閱AWS Glue 開發人員指南中的使用 AWS Glue 編寫工作

為 AWS Glue ETL工作建立 Athena 表

您在 Athena 中建立的資料表必須新增一個資料表屬性,稱為 classification,它可以識別資料格式。這允許 AWS Glue 使用表進行ETL作業。分類值可以是 avrocsvjsonorcparquetxml。Athena 中的 CREATE TABLE 陳述式範例如下所示:

CREATE EXTERNAL TABLE sampleTable ( column1 INT, column2 INT ) STORED AS PARQUET TBLPROPERTIES ( 'classification'='parquet')

如果在建立classification資料表時未新增 table 屬性,您可以使用 AWS Glue 主控台新增它。

若要使用 AWS Glue 主控台新增分類表屬性
  1. 登入 AWS Management Console 並開啟 AWS Glue 主控台,位於https://console.aws.amazon.com/glue/

  2. 在主控台導覽窗格中,選擇 Tables (資料表)。

  3. 選擇您想要編輯的資料表連結,然後選擇 Action (動作)、Edit table (編輯資料表)。

  4. 向下捲動到 Table properties (資料表屬性) 的區段中。

  5. 選擇新增

  6. Key (索引鍵) 欄位,輸入 classification

  7. Value (值) 欄位,輸入資料類型 (例如,json)。

  8. 選擇 Save (儲存)。

    Table details (資料表詳細資訊) 區段中,您輸入的資料類型會顯示在 Classification (分類) 表格的欄位。

如需詳細資訊,請參閱《AWS Glue 開發人員指南》中的使用資料表

使用ETL工作最佳化查詢效能

AWS Glue 工作可協助您將資料轉換為可最佳化 Athena 查詢效能的格式。資料格式對於 Athena 中的查詢效能和查詢成本有重大影響。

AWS Glue 支持寫入實木複合地板和ORC數據格式。您可以使用此功能轉換資料,以便在 Athena 中使用。如需使用 Parquet 的詳細資訊ORC,以及其他提升 Athena 效能的方法,請參閱 Amazon Athena 的十大效能調整秘訣

注意

為了減少 Athena 無法讀取 AWS Glue ETL工作產生的SMALLINTTINYINT資料類型的可能性,請在建立將資料轉換為的ETL工作INT時轉換SMALLINTTINYINT轉換為ORC。

自動化 AWS Glue 工作 ETL

您可以將 AWS Glue ETL工作設定為根據觸發器自動執行。當將來自外部 AWS 的資料以不理想的格式推送至 Amazon S3 儲存貯體以便在 Athena 進行查詢時,此功能非常理想。如需詳細資訊,請參閱開發AWS Glue 人員指南中的觸發 AWS Glue 工作