Dataflow 代管 I/O 連接器可讓您透過 REST 目錄,將即時資料擷取至 Apache Iceberg 資料表。這種做法可提供低延遲的串流寫入和動態目的地轉送功能,同時在湖倉分析堆疊中維持開放資料表格式互通性。
代管 I/O 支援多種目錄後端,包括 Hadoop、Hive 和 BigQuery metastore,但本文著重於以 Lakehouse REST 目錄為目標的串流管道。如要寫入 Apache Iceberg 的 BigQuery 資料表,請改用 BigQueryIO 連接器和 BigQuery Storage API,因為目標資料表必須在擷取前就存在。
必要條件
設定 Lakehouse。按照「搭配使用 Lakehouse 執行階段目錄和 Iceberg REST 目錄」一文的說明,為 Google Cloud 專案設定必要權限。請務必瞭解該頁面所述的 Lakehouse Iceberg REST 目錄限制。
依附元件
將下列依附元件新增至專案:
Java
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-managed</artifactId>
<version>${beam.version}</version>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-io-iceberg</artifactId>
<version>${beam.version}</version>
</dependency>
<dependency>
<groupId>org.apache.iceberg</groupId>
<artifactId>iceberg-gcp</artifactId>
<version>${iceberg.version}</version>
</dependency>
範例
下列範例示範串流管道,使用 REST 目錄將資料寫入 Apache Iceberg 資料表,並由 Lakehouse 執行階段目錄支援。
Java
如要向 Dataflow 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。