without haste but without rest
카프카 커넥트 본문
아파치 카프카 애플리케이션 프로그래밍 with 자바
Kafka Connect
카프카에 기본적으로 포함되어 있는 애플리케이션이다. 프로듀서, 컨슈머 애플리케이션을 직접 개발할 필요없이 템플릿 기반으로 사용할 수 있다.
source, sink에 대한 플러그인은 confluent hub에서 검색해서 찾을 수 있다.
1. 아키텍처에 대한 간단한 요약
유저가 커넥트에 커넥터 생성을 요청하면 커넥트는 내부에 커넥터와 태스크를 생성한다.
커넥터는 태스크를 관리하고, 태스크는 커넥터에 종속되는 개념으로, 데이터를 처리를 담당 한다.
유저는 Converter와 Transform 기능을 옵션으로 추가할 수 있다.
- 컨버터는 데이터 처리를 하기 전에 스키마를 변경하도록 돕는다. JsonConverter, StringConverter, ByteArrayConverter를 기본으로 제공하고 이외는 jar파일을 추가해서 사용할 수 있다.
- 트랜스폼은 데이터 처리 시 각 메시지 단위로 데이터를 간단하게 변환하기 위한 용도로 사용된다. ex) Json 데이터 처리 시 특정 키를 삭제하거나 추가할 수 있다.
2. Standalone Mode
프로세스를 한 개만 실행한다. 단일 프로세스로 구성되기 때문에 고가고용성을 보장하지 못한다.
3. Distributed Mode
분산 모드는 커넥트를 두 대 이상의 서버에서 클러스터 형태로 운영하는 방법이다. 커넥트가 클러스터로 묶이면 커넥트 하나가 이슈로 인해 중단 되더라도 남은 1개의 커넥트가 파이프라인을 지속적으로 처리할 수 있다.
'Data Engineering & DataOps > Kafka' 카테고리의 다른 글
카프카 미러메이커2 (0) | 2022.01.13 |
---|---|
카프카 메시지 Key의 역할 (0) | 2022.01.13 |
카프카 클러스터 도커 컴포즈 템플릿 (0) | 2022.01.10 |
Kafka 개념과 특징 (0) | 2021.12.10 |
M1 confluent-kafka 설치 에러 - fatal error: 'librdkafka/rdkafka.h' file not found (0) | 2021.09.17 |
Comments