選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

在 AWS Glue Studio 中使用 Hudi 架構

焦點模式
在 AWS Glue Studio 中使用 Hudi 架構 - AWS Glue

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

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

建立或編輯任務時,AWS Glue Studio 會視乎您使用的版本,自動為您新增對應的 AWS Glue Hudi 程式庫。如需詳細資訊,請參閱使用 AWS Glue 中的 Hudi 架構

在 Data Catalog 資料來源中使用 Apache Hudi 架構

若要將 Hudi 資料來源格式新增至任務,請執行下列操作:
  1. 從「來源」選單中,選擇 AWS Glue Studio Data Catalog。

  2. 資料來源屬性索引標籤中,選擇資料庫和資料表。

  3. AWS Glue Studio 顯示格式類型為 Apache Hudi 和 Amazon S3 URL。

    螢幕擷取畫面顯示 Data Catalog 來源節點的資料來源屬性索引標籤。

在 Amazon S3 資料來源中使用 Hudi 架構

  1. 從「來源」選單中,選擇 Amazon S3。

  2. 如果您選擇 Data Catalog 資料表做為 Amazon S3 來源類型,請選擇資料庫和資料表。

  3. AWS Glue Studio 顯示格式為 Apache Hudi 和 Amazon S3 URL。

  4. 如果您選擇 Amazon S3 位置做為 Amazon S3 來源類型,請按一下瀏覽 Amazon S3 來選擇 Amazon S3 URL。

  5. 資料格式中,選取 Apache Hudi。

    注意

    如果 AWS Glue Studio 無法從您選取的 Amazon S3 資料夾或檔案推斷結構描述,請選擇其他選項,以選取新的資料夾或檔案。

    其他選項中,選擇結構描述推論下的下列選項:

    • 讓 AWS Glue Studio 自動選擇一個範例檔案 – AWS Glue Studio 會在 Amazon S3 位置選擇一個範例檔案,以便推斷結構描述。在自動取樣檔案欄位中,您可以檢視自動選取的檔案。

    • 從 Amazon S3 中選擇一個範例檔案 – 按一下瀏覽 Amazon S3,選擇要使用的 Amazon S3 檔案。

  6. 按一下推斷結構描述。然後,您可以按一下輸出結構描述索引標籤,來檢視輸出結構描述。

  7. 選擇其他選項,以輸入鍵值對。

    螢幕擷取畫面顯示 Amazon S3 資料來源節點的「資料來源屬性」索引標籤中的「其他選項」區段。

在資料目標中使用 Apache Hudi 架構

在 Data Catalog 資料目標中使用 Apache Hudi 架構

  1. 目標選單中,選擇 AWS Glue Studio Data Catalog。

  2. 資料來源屬性索引標籤中,選擇資料庫和資料表。

  3. AWS Glue Studio 顯示格式類型為 Apache Hudi 和 Amazon S3 URL。

在 Amazon S3 資料目標中使用 Apache Hudi 架構

輸入值,或者從可用選項中選取,以設定 Apache Hudi 格式。如需有關 Apache Hudi 的詳細資訊,請參閱 Apache Hudi 文件

螢幕擷取畫面顯示 Amazon S3 資料來源節點的「資料來源屬性」索引標籤中的「其他選項」區段。
  • Hudi 資料表名稱 – 這是 hudi 資料表的名稱。

  • Hudi 儲存類型 – 從兩個選項中選擇:

    • 寫入時複製 – 建議用於最佳化讀取效能。這是預設的 Hudi 儲存類型。每次更新都會在寫入期間建立新版檔案。

    • 讀取時合併 – 建議將寫入延遲降至最低。更新會記錄到以資料列為基礎的 delta 檔案,並視需要壓縮以建立新版本的直欄式檔案。

  • Hudi 寫入操作 – 請從下列選項中選擇:

    • Upsert – 這是輸入記錄首先透過查詢索引標記為插入或更新的預設操作。建議您更新現有資料的位置。

    • 插入 – 這會插入記錄,但不檢查現有記錄,並且可能會導致重複。

    • 大量插入 – 這會插入記錄,建議用於大量資料。

  • Hudi 記錄關鍵字欄位 – 使用搜尋列來搜尋並選擇主要記錄索引鍵。Hudi 中的記錄由主索引鍵標識,這是記錄所屬的一對記錄索引鍵和分區路徑。

  • Hudi 預結合欄位 – 這是在實際寫入之前預結合中使用的欄位。當兩個記錄具有相同的索引鍵值時,AWS Glue Studio 會選擇預先組合欄位中值最大的記錄。設定增量值 (例如 updated_at) 所屬的欄位。

  • 壓縮類型 – 從壓縮類型選項中選擇:未壓縮、GZIP、LZO 或 Snappy。

  • Amazon S3 目標位置 – 按一下瀏覽 S3 來選擇 Amazon S3 目標位置。

  • Data Catalog 更新選項 – 請從下列選項中選擇:

    • 不更新資料目錄:(預設值) 如果您不希望任務更新資料目錄 (即使結構描述變更或新增分割區),請選擇此選項。

    • 在 Data Catalog 中建立資料表,並在後續執行時,更新結構描述並新增分區:如果選擇此選項,任務會在第一次執行任務時,在 Data Catalog 中建立資料表。在後續任務執行中,如果結構描述變更或新增分割區,任務會更新 Data Catalog 資料表。

      您還必須從 Data Catalog 中選取資料庫,然後輸入資料表名稱。

    • 在資料目錄和後續執行中建立資料表,保留現有的結構描述並新增分割區:如果選擇此選項,任務會在第一次執行任務時,在資料目錄中建立資料表。在後續的任務執行中,任務只會更新 Data Catalog 資料表以新增新的分割區。

      您還必須從 Data Catalog 中選取資料庫,然後輸入資料表名稱。

  • 分割區索引鍵:選擇要在輸出中用作分割索引鍵的欄。若要新增更多分割區索引鍵,請選擇新增分割區索引鍵。

  • 其他選項 – 根據需要輸入鍵值對。

透過 AWS Glue Studio 產生程式碼

儲存任務後,如果偵測到 Hudi 來源或目標,則會將下列任務參數新增至任務:

  • --datalake-formats – 在視覺化任務中偵測到不同的資料湖格式清單 (可直接選擇 “Format” 或間接選取由資料湖支援的目錄資料表)。

  • --conf – 根據 --datalake-formats 的值產生。例如,如果 --datalake-formats 的值為 'hudi',則 AWS Glue 會針對此參數產生 spark.serializer=org.apache.spark.serializer.KryoSerializer —conf spark.sql.hive.convertMetastoreParquet=false 的值。

覆寫 AWS Glue 提供的程式庫

若要使用 AWS Glue 不支援的 Hudi 版本,您可以指定自己的 Hudi 程式庫 JAR 檔案。若要使用您自己的 JAR 檔案:

  • 請使用 --extra-jars 任務參數。例如 '--extra-jars': 's3pathtojarfile.jar'。如需詳細資訊,請參閱 AWS Glue 任務參數

  • 請勿包括 hudi 作為 --datalake-formats 任務參數的值。輸入空白字串做為值,可確保 AWS Glue 不會自動為您提供任何資料湖程式庫。如需詳細資訊,請參閱使用 AWS Glue 中的 Hudi 架構

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。