使用 Dataflow 將外部 Iceberg 資料表匯入 Lakehouse 執行階段目錄

支援的表格格式

僅支援 Apache Iceberg V2 資料表,不支援 Iceberg V1 資料表。如果您有現有的 Iceberg V1 資料表,必須先升級至 V2 (例如執行 ALTER TABLE catalog.schema.table SET TBLPROPERTIES ('format-version'='2'); 或使用類似的引擎作業),才能匯入 Lakehouse 執行階段目錄。

您的用途可能需要將外部 Iceberg REST 目錄 (IRC) 資料表連結至現有的 Lakehouse for Apache Iceberg 資料表。Dataflow 的作業建構工具 UI 可讓您以低程式碼或無程式碼方式建構管道,將外部開放原始碼 Iceberg 目錄資料表遷移至 Lakehouse。這個程序可讓您將資料整合至統一的 Lakehouse 管理 Iceberg 格式,以進行跨引擎分析。

使用下列連線詳細資料,從外部 Iceberg 目錄匯入資料。

事前準備

如要匯入資料,您需要:

  1. 外部 Iceberg REST 目錄的連線資訊。例如:目錄名稱、命名空間、資料表名稱、帳戶 URI,以及存取目錄的角色。
  2. Lakehouse Iceberg 目錄、命名空間和資料表,用於匯入資料。

支援與限制

使用 Dataflow 將外部 Iceberg 目錄中的資料匯入 Lakehouse for Apache Iceberg 時,有下列限制:

  • 這項功能支援從外部可用的 Iceberg 提供者讀取資料,並將資料匯入 Lakehouse,但前提是這些提供者支援 IRC (Iceberg REST 目錄)。其他 Iceberg 目錄類型則不支援。
  • 這項功能支援批次和串流管道。

匯入外部 Iceberg 目錄資料表

如要將外部 Iceberg 目錄資料表匯入 Lakehouse for Apache Iceberg,請完成下列步驟:

  1. 前往 Google Cloud 控制台的 Lakehouse「Metastore」Metastore頁面。

    前往 Lakehouse 執行階段目錄

  2. 選取要匯入資料的目錄、命名空間和資料表。

  3. 在「Table details」(資料表詳細資料) 頁面上,按一下「Import table」(匯入資料表)

  4. 在「匯入設定」對話方塊中,選取「將 Apache Iceberg REST 目錄中的資料表匯入 Lakehouse (批次)」

    系統隨即會開啟 Dataflow 的「Job builder」(工作建立工具) 頁面。

  5. 在「來源」部分:

    1. 如要展開 Iceberg 資料表來源面板,請按一下展開箭頭。

    2. 在「Iceberg table」(Iceberg 資料表) 欄位中,輸入 Apache Iceberg 資料表的 ID。

    3. 在「目錄名稱」欄位中,輸入目錄名稱。

    4. 在「Filter」欄位中,輸入要使用的 Iceberg 篩選條件。例如:id > 5

    5. 選用:如要指定來源表格的資料欄變更,請使用「保留資料欄」或「捨棄資料欄」部分。

    6. 在「目錄屬性」專區的「目錄類型」清單中,選取目錄類型。

    7. 在「目錄 URI」欄位中,輸入目錄的 URI。例如:http://localhost:8181

    8. 在「Warehouse name」(倉庫名稱) 欄位中,輸入目錄名稱。

      對於部分外部 Iceberg REST 目錄供應商,倉儲會經過抽象化,目錄名稱則會以倉儲名稱的形式提供。

    9. 在「Authentication type」(驗證類型) 清單中,選取驗證類型。例如:OAUTH2

  6. 選用步驟:在「轉換」部分,為來源資料新增轉換。

  7. 在「Sink」(接收器) 部分:

    1. 選用:查看「Lakehouse 資料表」接收器面板。這個面板中的資訊 (例如 Lakehouse 資料表、目錄名稱和倉庫位置) 通常會預先填入。
  8. 在「Dataflow options」(Dataflow 選項) 部分,按一下「Run job」(執行工作)

後續步驟