AWS Glue for Spark 中的輸入與輸出的資料格式選項 - AWS Glue

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

AWS Glue for Spark 中的輸入與輸出的資料格式選項

這些頁面提供有關 AWS Glue for Spark 支援的資料格式之功能支援和組態參數的資訊。有關此信息的用法和適用性的說明,請參閱以下內容。

跨資料格式的功能支援AWSGlue

每種數據格式可能支持不同AWSGlue 功能。根據您的格式類型,可能會或可能不支持以下常見功能。請參閱資料格式的文件,瞭解如何運用我們的功能來滿足您的需求。

讀取 AWSGlue 可以識別和解釋這種數據格式,而無需額外的資源,例如連接器。
寫入 AWSGlue 可以在沒有額外資源的情況下以這種格式寫入數據。您可以在工作中包含協力廠商程式庫,並使用標準 Apache Spark 函數來寫入資料,就像在其他 Spark 環境中一樣。如需這些程式庫的詳細資訊,請參閱 以 AWS Glue 使用 Python 程式庫
串流讀取 AWSGlue 可以識別和解釋這種資料格式從 Apache Kafka、Amazon Managed Streaming for Apache Kafka 或 Amazon Kinesis 訊息流。我們希望流以一致的格式呈現數據,因此它們被讀為DataFrames
對小型檔案進行分組 AWSGlue 可以將文件組合在一起,以便在執行時批量發送到每個節點的工作AWSGlue 轉換。如此可大幅改善涉及大量小型檔案的工作負載的效能。如需詳細資訊,請參閱 讀取在大型群組中的輸入檔案
任務書籤 AWSGlue 可以透過工作書籤,追蹤在工作執行期間,在相同資料集上執行相同工作的轉換進度。這可以提高工作負載的效能,涉及自上次作業執行以來只需在新資料上完成工作的資料集。如需詳細資訊,請參閱 使用任務書籤追蹤處理的資料

用於與中的資料格式互動的參數AWSGlue

某些AWSGlue 連接類型支持多種format類型,要求您指定有關您的數據格式的信息format_options使用類似方法時的對象GlueContext.write_dynamic_frame.from_options

某些連線類型不需要format_options。例如,在正常使用中,與關聯式資料庫的 JDBC 連線將以一致的表格式擷取資料。因此,從 JDBC 連接讀取不需要format_options

在膠水中讀取和寫入數據的某些方法不需要format_options。例如,使用GlueContext.create_dynamic_frame.from_catalog取代為AWSGlue 爬蟲程式。爬蟲確定數據的形狀。使用爬蟲時,AWSGlue 分類器將檢查您的數據,以做出有關如何表示數據格式的明智決策。然後,它會將您的數據的表示存儲在AWSGlue 資料型錄,可在AWSGlue ETL 腳本來檢索您的數據GlueContext.create_dynamic_frame.from_catalog方法。檢索器無需手動指定有關數據格式的信息。

對於存取受 AWS Lake Formation 管控資料表的任務,AWS Glue 支援讀取和寫入受 Lake Formation 管控之資料表所支援的所有格式。如需受 AWS Lake Formation 管控之資料表支援的格式清單,請參閱《AWS Lake Formation 開發人員指南》中的受管控資料表的注意事項與限制

注意

對於寫入 Apache Parquet,AWS Glue ETL 只支援透過指定為動態框架優化的自訂 Parquet 寫入器類型的選項寫入受管控資料表。使用 parquet 格式寫入受管控資料表時,您應該在表參數中新增值為 true 的金鑰 useGlueParquetWriter

共用的組態參考

您可以將以下 format_options 值與任何格式類型搭配使用。

  • attachFilename:以適當格式作為資料欄名稱使用的字串。如果您提供此選項,記錄的來源檔案名稱會附加到記錄中。參數值將用作資料欄名稱。

  • attachTimestamp:以適當格式作為資料欄名稱使用的字串。如果您提供此選項,記錄的來源檔案修改時間會附加到記錄中。參數值將用作資料欄名稱。