Kafka 카프카 커스텀 싱크 커넥터
Kafka Custom Sync Connector
put 함수가 제일 중요하다
싱크 커넥터는 토픽의 데이터를 타깃 애플리케이션 또는 타깃 파일로 저장하는 역할을 한다.
카프카 커넥트 라이브러리에서 제공하는 SinkConnector
와 SinkTask
클래스를 사용하면 직접 싱크 커넥터를 구현할 수 있다.
직접 구현한 싱크 커넥트는 빌드하여 jar로 만들고 커넥트의 플러그인으로 추가하여 사용할 수 있다.
SinkConnector Spec
class TestSinkConnector : SinkConnector() {
override version(): String {}
override start(props: Map<String, String>) {}
override taskClass(): KClass<* out Task> {}
override taskConfigs(maxTasks: Int): List<Map<String, String>> {}
override config(): ConfigDef {}
override stop() {}
}
SinkTask Spec
class TestSinkTask : SinkTask() {
override version(): String {}
override start(props: Map<String, String>) {}
override put(records: Collection<SinkRecord>) {}
override flush(offsets: Map<TopicPartition, OffsetAndMetadata>) {}
override stop() {}
}
Comments