Openflow Connector for Snowflake to Kafka 소개

Openflow Connector for Snowflake to Kafka 소개

이 페이지에서는 Snowflake to Kafka용 Openflow Connector의 기본 개념과 제한 사항을 설명해요. Snowflake 스트림을 소비해 CDC 레코드를 Kafka 토픽으로 보내고, 실시간 인사이트 분산이나 이벤트 기반 아키텍처를 구성하려는 경우 사용합니다.

출처: Snowflake 문서

본문

Note

이 커넥터는 Snowflake Connector Terms에 의해 규율됩니다.

이 토픽은 Snowflake to Kafka용 Openflow Connector의 기본 개념과 제한 사항을 설명합니다.

커넥터는 Snowflake 스트림을 소비하고 소비된 CDC 레코드를 Kafka 토픽으로 보냅니다. Snowflake Stream 객체는 테이블에 대한 DML(데이터 조작 언어) 변경(삽입·업데이트·삭제 포함)과 각 변경에 대한 메타데이터를 기록해, 변경된 데이터를 사용해 작업을 수행할 수 있게 합니다. 이 과정을 CDC(변경 데이터 캡처, change data capture)라고 합니다.

다음과 같은 목적이 있다면 이 커넥터를 사용하세요:

  • 실시간 인사이트 분산과 이벤트 기반 아키텍처를 위해 CDC를 사용해 Snowflake 테이블을 Apache Kafka로 복제하기

작업 흐름

CDC 데이터를 받을 Kafka 브로커의 구성에 따라 작업 흐름은 약간 달라질 수 있습니다.

  1. Snowflake 계정 관리자가 다음 작업을 수행합니다:

  2. CDC 데이터의 소스가 될 Snowflake 스트림을 생성하거나 식별합니다.

  3. 커넥터가 사용할 웨어하우스를 지정합니다.

  4. 커넥터가 사용하는 Snowflake 사용자와 이 사용자의 역할을 구성하거나 식별합니다. 사용자는 소스 Snowflake 스트림에 적절한 권한이 있어야 합니다. 최소한 사용자는 Snowflake 스트림이 포함된 데이터베이스·스키마에 USAGE 권한, 그리고 스트림과 스트림의 기본 테이블·뷰 객체에 SELECT 권한이 필요합니다.

  5. Kafka 관리자가 다음 작업을 수행합니다:

  6. Snowflake 스트림에서 캡처한 CDC의 대상이 될 Kafka 브로커와 토픽을 생성하거나 식별합니다.

  7. 커넥터가 사용할 Kafka 브로커의 인증 메커니즘을 설정합니다.

  8. 데이터 엔지니어가 다음 작업을 수행합니다:

  9. 커넥터를 설치·구성합니다.

  10. Snowflake 자격 증명과 구성을 제공합니다.

  11. Kafka 자격 증명과 구성을 제공합니다.

  12. 커넥터 파라미터를 제공합니다.

스트림 메타데이터 열

스트림 메타데이터 열인 METADATA$ROW_ID, METADATA$ISUPDATE, METADATA$ACTION이 Kafka 토픽으로 전송됩니다. 이 열들의 이름은 Kafka로 보내기 전에 수정됩니다. 전송되는 JSON 메시지 페이로드에서는 METADATA_ROW_ID, METADATA_ISUPDATE, METADATA_ACTION이 됩니다.

자세한 내용은 Stream columns를 참고하세요.

제한 사항

  • 단일 커넥터는 하나의 Snowflake 스트림에서만 CDC를 캡처할 수 있습니다.

  • 메시지는 스키마 없이 전송됩니다.

  • 스키마 진화(schema evolution)는 지원되지 않습니다.

다음 단계

Openflow Connector for Snowflake to Kafka 설정

더 알아보기 (Learn more)