AI Briefing

카카오, 광고 데이터 파이프라인용 'kafka-sink-connector' 오픈소스 공개

·2023.01.12 00:00

핵심 내용

광고 로그의 지면별 필터링과 분기를 위해 개발된 커스텀 커넥트로, json 필터링과 샘플링 기능을 지원한다.

1 / 2

자세히 보기

카카오 광고추천팀이 광고 로그 데이터의 ETL 및 실시간 모델 학습을 위해 개발한 커스텀 커넥터 kafka-sink-connector를 오픈소스로 공개했다. 이 커넥터는 카프카 커넥트 기반의 제네시스 데이터 플랫폼에서 활용되며, 방대한 원천 광고 스트림 데이터를 지면별 요구사항에 맞춰 필터링, 분기, 샘플링하는 역할을 수행한다.

기존 데이터 파이프라인은 Logstash 등을 활용했으나, 지면별 데이터 분기와 필터링 로직이 빈번하게 변경되는 환경에서는 운영 효율성이 떨어졌다. kafka-sink-connector는 Apache Kafka Connect의 확장 구조를 활용해 이러한 문제를 해결하며, 기존 Logstash의 필터링 기능을 대체하는 커스텀 커넥터로 개발되었다.

kafka-sink-connector의 주요 기능은 다음과 같다.

  • 필터링 및 분기: jsonPath 조건을 이용해 데이터를 필터링하고 특정 토픽으로 분기한다.
  • 메타데이터 주입: 메시지 키와 타임스탬프를 파싱하여 주입할 수 있다.
  • 코파티셔닝 지원: 외부 토픽과의 코파티셔닝이 필요할 때 메시지 키를 주입하여 Kafka Streams 조인을 준비한다.
  • 미러링 및 샘플링: 지정된 비율로 데이터를 샘플링하거나, 무거운 MirrorMaker2 대신 가벼운 미러링 파이프라인으로 사용할 수 있다.

이 도구는 SinkTask의 put() 메서드 내부에서 로직을 구현하는 방식으로, Kafka Connect를 사용 중인 조직에서 파이프라인 운영을 간소화할 수 있도록 공개되었다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.