使用 Dataflow 将外部 Iceberg 表导入 Lakehouse 运行时目录

支持的表格式

仅支持 Apache Iceberg V2 表;不支持 Iceberg V1 表。如果您有现有的 Iceberg V1 表,则必须先将其升级到 V2(例如,运行 ALTER TABLE catalog.schema.table SET TBLPROPERTIES ('format-version'='2'); 或使用类似的引擎操作),然后才能将其导入 Lakehouse 运行时目录。

您的用例可能需要您将外部 Iceberg REST Catalog (IRC) 表连接到现有的 Lakehouse for Apache Iceberg 表。借助 Dataflow 的作业构建器界面,您可以通过低代码或无代码方式构建流水线,将外部开源 Iceberg 目录表迁移到 Lakehouse。 此过程可让您将数据整合为统一的 Lakehouse 管理的 Iceberg 格式,以便进行跨引擎分析。

使用以下连接详细信息从外部 Iceberg 目录导入数据。

准备工作

如需导入数据,您需要以下内容:

  1. 外部 Iceberg REST Catalog 的连接信息。例如:目录名称、命名空间、表名称、账号 URI 和访问目录的角色。
  2. 用于导入数据的 Lakehouse Iceberg 目录、命名空间和

支持和限制

使用 Dataflow 将数据从外部 Iceberg 目录导入 Lakehouse for Apache Iceberg 时,存在以下限制:

  • 此功能支持从支持 IRC (Iceberg Rest Catalog) 的外部可用 Iceberg 提供商读取数据到 Lakehouse。不支持其他 Iceberg 目录类型。
  • 此功能支持批处理和流式处理流水线。

导入外部 Iceberg 目录表

如需将外部 Iceberg 目录表导入 Lakehouse for Apache Iceberg,请完成以下步骤:

  1. 在 Google Cloud 控制台中,前往 Lakehouse Metastore 页面。

    前往 Lakehouse 运行时目录

  2. 选择要将数据导入到的目录、命名空间和表。

  3. 表详细信息 页面上,点击 导入表

  4. 导入配置 对话框中,选择将 Apache Iceberg REST Catalog 中的表导入 Lakehouse(批量)

    系统会打开 Dataflow 作业构建器 页面。

  5. 来源 部分中:

    1. 如需展开 Iceberg 表 来源面板,请点击 展开器箭头。

    2. Iceberg 表 字段中,输入 Apache Iceberg 表的标识符。

    3. 目录名称 字段中,输入目录的名称。

    4. 过滤条件 字段中,输入要使用的 Iceberg 过滤条件。例如, id > 5

    5. 可选:如需指定源表列更改,请使用保留列舍弃列 部分。

    6. 目录属性 部分的目录类型 列表中,选择目录的类型。

    7. 目录 URI 字段中,输入目录的 URI。例如,http://localhost:8181

    8. 仓库名称 字段中,输入目录名称。

      对于某些外部 Iceberg REST Catalog 提供商,仓库是抽象的,目录名称作为仓库名称提供。

    9. 身份验证类型 列表中,选择身份验证类型。例如,OAUTH2

  6. 可选:在转换 部分中,向源数据添加任何转换。

  7. 接收器 部分中:

    1. 可选:查看 Lakehouse 表 接收器面板。此面板中的信息(例如 Lakehouse 表、目录名称和仓库位置)通常会预先填充。
  8. Dataflow 选项 部分中,点击运行作业

后续步骤