Kafka
-
Kafka Consumer Configuration 알아보기 (fetch.min.bytes, fetch.max.wait.ms, max.partiKafka 2024. 1. 12. 20:09
- 목차 관련있는 다른 글.https://westlife0615.tistory.com/588 Kafka Consumer Configuration 알아보기 ( session.timeout.ms, heartbeat.interval.ms, auto.offset.reset, auto.commit.interval.m- 목차 들어가며. 이번 글에서는 Kafka Consumer 의 Configuration 들 중에서 heartbeat.interval.ms, session.timeout.ms, auto.offset.reset, auto.commit.interval.ms 등 에 대해서 알아보도록 하겠습니다. heartbeat.interval.ms Kafka Cwestlife0615.tistory.com 들어가며.이번 글..
-
Kafka Log Compaction 알아보기Kafka 2024. 1. 12. 06:38
- 목차 들어가며. 카프카 토픽은 데이터의 용량과 시간 조건을 기준으로 데이터를 삭제합니다. 이를 Retention 이라고 하는데요. retention.ms, retention.bytes 와 같은 설정을 통해서 카프카는 토픽의 데이터의 저장 기간을 지정할 수 있습니다. 카프카 토픽의 기존 설정으로 retention.ms 는 7일 그리고 retention.bytes 는 제한이 없습니다. 즉, 기본 설정의 토픽을 생성하게 되면 7일 주기로 토픽에 추가된 데이터는 삭제되고 용량과 관련된 제약은 없다고 생각하시면 됩니다. 아래 이미지처럼 retention.ms 가 7일인 상황에서 7일이 경과된 Log Sgement 파일들은 하나씩 삭제가 됩니다. 00000000.log, 00010000.log, 00033000..
-
[ Kafka Producer ] 불안정한 네트워크에서 데이터 생성하기 ( Acks, Retries )Kafka 2024. 1. 9. 05:22
- 목차 들어가며. 이번 글에서는 카프카 클러스터의 네트워크를 의도적으로 불안정하게 만든 이후에 Kafka Producer 가 어떻게 해야 안정적으로 데이터를 생성할 수 있는지 알아보려고 합니다. 아래의 링크는 Docker 를 활용하여 카프카 클러스터를 구축하는 내용이 적힌 페이지의 주소입니다. https://westlife0615.tistory.com/474 Docker 로 Kafka Cluster 구축해보기. - 목차 소개. 저는 로컬 환경에서 카프카 관련 테스트를 진행하는 경우가 많이 생기더군요. 그래서 docker-compose 를 활용하여 Kafka, ZooKeeper 클러스터를 구축하는 내용을 작성하려고 합니다. docker-com westlife0615.tistory.com 실험. 아래의 명..
-
[Kafka-Streams] mapValues 알아보기Kafka 2024. 1. 9. 05:22
- 목차 들어가며. 이번 글에서는 kafka streams API 의 mapValues 의 기능에 대해서 알아보려고 합니다. mapValues API 는 kafka streams 의 Stateless 한 데이터 변형을 제공하는 기능입니다. 이전 상태와 무관하가 현재 처리하는 데이터의 상태와 변형에 집중합니다. 아래 링크는 Docker 로 Kafka Cluster 를 간단히 구축하는 내용을 적은 웹사이트의 링크입니다. https://westlife0615.tistory.com/474 Docker 로 Kafka Cluster 구축해보기. - 목차 소개. 저는 로컬 환경에서 카프카 관련 테스트를 진행하는 경우가 많이 생기더군요. 그래서 docker-compose 를 활용하여 Kafka, ZooKeeper 클러..
-
[Kafka-Connect] S3 Sink Connector 따라해보기 1Kafka 2024. 1. 8. 21:07
- 목차 들어가며. 이번 글에서는 Kafka Connect 의 S3 Sink 를 구현해보려고 합니다. 사용할 데이터는 Kaggle User Behavior - Advertisement 데이터를 사용할 예정이구요. 아래 링크에서 해당 데이터를 내려받으실 수 있습니다. https://www.kaggle.com/code/srolka/user-behavior-advertisement/input?select=advertising.csv User Behavior - Advertisement Explore and run machine learning code with Kaggle Notebooks | Using data from Advertisement www.kaggle.com 사용할 advertisement cs..
-
[Kafka-Streams] KStream 알아보기Kafka 2024. 1. 6. 06:38
- 목차 함께 보면 좋은 글. https://westlife0615.tistory.com/474 Docker 로 Kafka Cluster 구축해보기. - 목차 소개. 저는 로컬 환경에서 카프카 관련 테스트를 진행하는 경우가 많이 생기더군요. 그래서 docker-compose 를 활용하여 Kafka, ZooKeeper 클러스터를 구축하는 내용을 작성하려고 합니다. docker-com westlife0615.tistory.com 소개. 이번 글에서 Kafka Streams 의 KStream 에 대해서 알아보려고 합니다. KStream 은 카프카 스트림 프로세싱 어플리케이션에서 mutation 되는 Stream 의 단위입니다. 그러니깐 끊임없이 이벤트가 유입되는 스트림 환경에서 여러 Transformation..
-
[Kafka] Key Partitioner 알아보기Kafka 2024. 1. 5. 06:12
- 목차 함께 보면 좋은 글.https://westlife0615.tistory.com/886 [Kafka] Adaptive Partitioning 코드로 살펴보는 내부 동작 원리- 목차 들어가며.Kafka의 Adaptive Partitioning 은 Kafka 프로듀서가 데이터를 효율적으로 분배하기 위해 동적으로 파티션 할당 전략을 조정하는 기법입니다.3.x.x 대 버전의 Kafka Client Module 에서는 기본westlife0615.tistory.com 소개.Partitioner 는 Producer 가 생성한 Record 를 어떤 Partition 에 저장할지 결정하는 Producer 의 기능입니다.보통 하나의 Topic 은 여러개의 Partition 들로 구성되고, Record 들은 골고..
-
[Kafka] ProducerInterceptors 알아보기Kafka 2024. 1. 5. 06:12
- 목차 소개. ProducerInterceptor 는 Kafka Producer 의 한가지 기능입니다. ProducerInterceptor 의 Fully Qualified Name 은 org.apache.kafka.clients.producer.ProducerInterceptor 이며, org.apache.kafka.clients.producer 패키지에 속합니다. ProducerInterceptor 의 주된 기능은 카프카 메시지가 생성되는 Lifecycle 에서 Callback 을 제공합니다. Callback Function 은 onSend, onAcknowledgement 두가지입니다. onSend 는 메시지가 생성되는 과정에서의 Callback 이구요. onAcknowledgement 는 메시지의..
-
[Kafka] Partition Ownership 알아보기Kafka 2024. 1. 5. 06:12
- 목차 소개. Partition Ownership 은 어떤 Partition 을 소비할 수 있는 Consumer 가 누구인지를 지칭하는 표현입니다. 예를 들어, 아래와 같은 Topic 과 Consumer Group 의 관계가 있다고 생각해보겠습니다. 이때에 Consumer 1 은 Partition 1 의 Ownership 을 가집니다. 그리고 Consumer 2, 3, 4 또한 Partition 2, 3, 4 의 Ownership 을 가집니다. Partition Ownership 의 범위는 Consumer Group 으로 제한합니다. Consumer Group 의 Consumer 마다 Partition Ownership 을 가지며, Partition Ownership 을 가지는 Consumer 가 To..
-
[Kafka] Log Index File 알아보기Kafka 2024. 1. 3. 04:32
- 목차 들어가며.Kafka 는 Log Management 를 위해서 3가지 파일을 사용합니다.첫번째 파일은 Log 파일로써 실질적인 Log Segment 를 저장합니다.Kafka Producer 가 생성하는 레코드들이 파티션 별로 저장되게 됩니다.Log 파일은 .log 로 끝나는 확장자를 가지는 파일입니다.https://westlife0615.tistory.com/514 Kafka Log Segment 알아보기- 목차 함께 보면 좋은 글. https://westlife0615.tistory.com/474 Docker 로 Kafka Cluster 구축해보기. - 목차 소개. 저는 로컬 환경에서 카프카 관련 테스트를 진행하는 경우가 많이 생기더군요. 그래서 docker-compwestlife0615.ti..