BigLake REST 카탈로그를 사용하여 Apache Iceberg에서 변경 데이터 캡처 (CDC) 이벤트를 읽으려면 Apache Beam 관리형 I/O 커넥터를 사용합니다.
관리형 I/O는 Apache Iceberg의 다음 기능을 지원합니다.
카탈로그 |
|
---|---|
읽기 기능 | 일괄 읽기 |
쓰기 기능 |
|
Apache Iceberg용 BigQuery 테이블의 경우 BigQuery Storage API와 함께 BigQueryIO
커넥터를 사용합니다. 테이블이 이미 있어야 합니다. 동적 테이블을 만들 수 없습니다.
제한사항
- Apache Iceberg CDC는 관리 API를 사용하는 경우에만 지원됩니다. 관리 변환 서비스 기능이 아직 사용 설정되지 않았습니다. 하위 호환성에 영향을 미치는 변경사항이 있을 수 있음
- CDC 관리 API는 추가 전용 스냅샷만 읽습니다. 전체 CDC는 아직 사용할 수 없습니다.
기본 요건
- BigLake 설정 Iceberg REST 카탈로그와 함께 BigLake Metastore 사용에 따라 필요한 권한으로 Google Cloud Platform 프로젝트를 구성합니다. 해당 페이지에 설명된 BigLake Iceberg REST 카탈로그의 제한사항을 이해해야 합니다.
- 소스 Iceberg 테이블을 만듭니다. 여기에 표시된 예시에서는 Apache Iceberg 테이블이 있다고 가정합니다. 이러한 테이블을 만들려면 BigLake REST 카탈로그를 사용하여 Apache Iceberg에 스트리밍 쓰기에 표시된 파이프라인을 사용하면 됩니다.
종속 항목
다음 종속 항목을 프로젝트에 추가합니다.
자바
<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>
예
다음 예에서는 Apache Iceberg 테이블에서 CDC 이벤트를 읽고, 사용자 클릭을 집계하고, 결과를 다른 Apache Iceberg 테이블에 쓰는 스트리밍 파이프라인을 보여줍니다.
Java
Dataflow에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
다음 단계
- 관리형 I/O 자세히 알아보기
- BigLake REST 카탈로그에 대해 자세히 알아보세요.