Kafka란, 고성능 데이터 파이프라인, 스트리밍 분석, 데이터 통합 및 기타 여러 중요한 애플리케이션을 위해 오픈 소스 분산 이벤트 스트리밍 플랫폼 입니다.Apache Kafka는 주로 실시간 데이터 스트리밍 파이프라인을 구축하는데 사용됩니다.Kafka는 기존 메시지
Kafka TopicsKafka ProducersKafka ConsumersKafka Consumer Groups and Consumer OffsetsKafka BrokersKafka Topic ReplicationZookeeperKRaft ModeKafka 시리즈에서
Kafka Topics란 모든 종류의 메시지가 포함될 수 있으며 이러한 모든 메시지의 순서를 데이터 스트림이라고 부릅니다.Kafka Topics의 데이터는 기본적으로 1주일(deafult 설정) 후 삭제되며 이 설정 값은 변경할 수 있습니다.오래된 데이터를 삭제하는 매
Kafka Producers > Kafka Producers란, Kafka를 사용해 토픽이 생성되면 해당 토픽으로 데이터를 전송하는 것입니다. 이때 Kafka Producers가 참여하게 됩니다. 데이터를 토픽으로 보내는 애플리케이션을 Kafka Producers라고
Kafka Consumers란 하나 이상의 Kafka Topic에서 이벤트 데이터를 가져오는 애플리케이션을 말합니다.Consumers는 Apache Kafka에서 한 번에 하나 이상의 파티션에서 데이터를 읽을 수 있으며, 데이터는 아래와 같이 각 파티션 내에서 순서대로
Kafka Consumer는 Kafka Topic의 파티션의 데이터를 개별적으로 사용할 수 있지만 수평 확장성을 위해서는 Kafka Topic을 그룹으로 사용하는 것이 좋습니다.Consumers는 동일한 애플리케이션의 일부이므로 동일한 “논리적 작업”을 수행하는 Con
Kafka Broker란 단일 Kafka 서버를 말합니다. 해당 Kafka Broker는 JVM(java version 11+)에서 실행되는 프로그램이며 일반적으로 Kafka Broker 역할을 하는 서버는 필요한 프로그램만 실행하고 다른 것은 실행하지 않습니다.kaf
Kafka의 인기 중 하나는 Broker의 장애에 대한 강력한 내구성을 제공하는 데에 있습니다. Kafka는 실패에 대응하여 가동 시간과 데이터 정확성을 유지하기 위해 복제를 핵심 기능으로 설계되었습니다.Kafka Replication이란 동일한 데이터를 둘 이상의 B
간단하게 Binary or Homebrew로 Kafka를 시작하는 방법을 소개하겠습니다.Java JDK 11+ 설치https://kafka.apache.org/downloads 에서 Binary downloads에서 Apache Kafka 다운binary를 사
로컬에 Java를 설치하면 됩니다.문서를 참고하여 설치하시면 됩니다.https://docs.aws.amazon.com/corretto/latest/corretto-11-ug/downloads-list.htmlhttps://kafka.apache.org
kafka-topic 는 Kafka에서 Topic create, delete, describe, topic 변경 등에서 사용됩니다.Kafka Topic 생성시에는 필수 매개변수를 제공해야 합니다.topic name, partition 수, replication fact
Kafka Producer CLI인 kafka-console-produce 는 입력된 데이터를 읽어 kafka에 전송합니다.카프카 토픽 생성Kafka v2.5+Kafka v2.4이하ouput위 표시가 보이면 메시지를 전송할 수 있습니다.메시지는 기본 키인 null 과
과거 데이터를 읽어야 하는 경우 --from-beginnning 옵션 사용그렇지 않으면 미래의 데이터만 읽게 됩니다.kafka-console-consumer.sh CLI 사용미래 메시지만 consume 방법모든 메시지 consume(과거, 미래)방법ouput기본적으로
Apache Kafka는 공식적으로 Java 언어에 대한 SDK만 제공합니다.Apache Kafka ClientsOfficial client libraryOfficial Kafka Streams client libraryKafka for Spring BootSpring
이전 포스팅에서 Producer가 Kafka에 데이터를 전송하는 방법을 학습하였습니다.이번에는 데이터가 올바르게 생성되었는지, offset, partition 정보를 조회해보려합니다. 그러기 위해선 callback 함수를 구현해야 합니다.출력 결과를 보면, key를 n
Kafka Consumer 만드는 법 Producer properties와 비슷하게 Kafka는 다양한 Consumer Properties를 제공합니다. 공식문서를 참고하려 Consumer에 필요한 속성을 확인할 수 있습니다. Kafka > Documentation >
컨슈머가 그룹에 합류하거나 나갈때마다 파티션이 컨슈머 사이에서 이동을 하게 되는데, 이를 리밸런싱이라고 합니다.또한 관리자가 새 파티션을 토픽에 추가하게 되는 경우에도 발생하게 됩니다.예제 코드는 앞선 kafka Consumer Demo 에서 사용했던 예제 코드를 재사