Apache Kafka Connect
- 카프카 커넥트는 아파치 카프카와 다른 시스템 간에 데이터를 확장 가능하고, 안전한 방법으로 스트리밍하기 위한 도구이다.
- 전체 데이터베이스를 수집하거나 모든 애플리케이션 서버에서 메트릭을 수집해 카프카 토픽으로 보낼 수 있기 때문에, 데이터를 짧은 지연 시간으로 스트림 처리할 수 있다.
Functions
- 카프카 커넥터를 위한 공통 프레임워크 : 카프카 커넥트는 다른 데이터 시스템을 카프카와 통합하는 과정을 표준화해서, 커넥터 개발, 배포, 관리를 단순화해준다.
- 분산 실행 모드와 독립 실행 모드 : 조직 전체를 지원하는 대규모 중앙 관리 서비스로 스케일 업하거나 개발, 테스트, 소규모 프로덕션 배포로 스케일 다운
- REST 인터페이스 : 손쉬운 REST API를 통해 카프카 커넥트 클러스터에 커넥터 제출, 관리
- 자동 오프셋 관리 : 카프카 커넥트는 커넥터 정보 약간만으로도 오프셋 커밋 프로세스를 자동으로 관리할 수 있으므로, 커넥터 개발자는 오프셋 커밋과 관련해 에러가 발생하기 쉬운 지점에 대한 걱정 없이 커텍터를 개발할 수 있다.
- 기본으로 지원하는 분산 서비스와 확장성 : 카프카 커넥트는 기존 그룹 관리 프로토콜을 기반으로 동작한다. 워커를 더 추가하면 카프카 커넥트 클러스터를 확장할 수 있다.
- 스트리밍/배치 통합 : 카프카의 기존 기능을 활용하는 카프카 커넥트는 스트리밍, 배치 데이터 시스템을 연결하는 가장 이상적인 솔루션이다.
실행 모드
- 독립 실행 모드(단일 프로세스) : 워커가 하나가 필요할 법한 상황(로그 파일 수집 등)에 유용하다.
- 분산 실행 모드 : 자동으로 작업을 분산시켜주고 동적으로 스케일 업(또는 다운)할 수 있으며, 활성 태스크와 설정, 오프셋 커밋 데이터에 내결함성을 제공한다.
Reference
토리맘의 한글라이즈 프로젝트