inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

카프카 완벽 가이드 - 코어편

Key가 없는 메시지의 파티션 분배전략 - 라운드로빈과 스티키 파티셔닝

Partition에 할당된 Batch Buffer

293

이현준

작성한 질문수 4

0

안녕하세요

강의 잘 듣고 있습니다.

"Kafka Producer의 send() 메소드 호출 프로세스" 장표에 묘사된 Batch 관련해서 의견 남깁니다.

 

강의 중반부터 나오듯이 각 Batch 버퍼는 Partition과 1대1 대응하도록 되어있는데, 해당 장표에서는 Partition#1 안에 여러개의 배치가 존재할 수 있는 것처럼 되어 있어 혼동이 생길 수 있어 보입니다. Partition#1에 갈 Message는 Batch#1에만 적재되어야하므로 그림 상 P#1 안에는 B#1만 있는 것이 맞지 않을까요?

 

만약 제가 의도와는 다르게 이해한 것이라면, 간략한 설명 덧붙여주시면 감사하겠습니다.

kafka 데이터-엔지니어링

답변 2

1

권 철민

안녕하십니까,

말씀하신대로 Producer 내부의 Partitioner 레벨에서는 Topic의 Partition당 1개의 Batch buffer가 할당되는게 맞습니다.

다만 이후 Producer 강의에서 보다 자세히 설명드릴텐데, Partitioner 거쳐서 Record Accumulator에 여러개의 Batch 메시지가 Topic Partition 별로 쌓인 뒤 Kafka Broker 로 보내질 수 있기에 그림이 그렇게 되어 있습니다. 해당 그림은 Record Accumulator 에 누적된 Batch들이라고 보시면 됩니다.

요약드리면 Partitioner가 Topic Partition당 1개의 batch로 작업하게 되면, 바로 Topic으로 보내지 않고 Record Accumulator에 여러 batch들을 임시로 저장한 뒤에 여러 batch들을 한꺼번에 보내게 됩니다.

감사합니다.

0

이현준

이후에 배울 내용으로 설명이 되는거였네요. 친절한 답변 감사합니다!!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

강의를 듣는 중 생긴 강의 내용과 관련된 질문에 대해, 비슷한 질문이 이미 답변되었음을 확인하였습니다.

“메시지 배치 내의 데이터 저장 관련 질문”에 대해 강사님께서 직접 답변을 제공하신 내용이 있으며, 해당 답변에서 메시지 배치의 작동 방식 및 Kafka Producer의 send() 메소드 관련 내용에 대해 설명하고 있습니다.

아래 링크를 클릭하시면 강사님이 직접 해주신 자세한 답변을 확인하실 수 있습니다.

위 링크에서 배치 단위의 메시지 처리와 관련된 내용을 확인하시면, 강의 장표에 표시된 내용에 대한 이해에 도움이 될 것입니다.

virtual box 설치 문제

0

60

2

카프카 서버 구축 관련 문의

0

65

2

카프카 토픽 Key 타입 변경에 관한 질문

0

70

2

Zookeeper에서 KRaft

0

78

1

카프카 학습과 관련하여 질문 드립니다

0

96

2

파티션 증가시 비용 증가 고려

0

69

2

Kafka 초기 Partition 개수 설정 관련 질문

0

82

2

VM 과 도커의 차이

0

138

2

vm 어댑터설정 문의

0

78

2

Cooperative Sticky Rebalancing 질문

0

58

2

consumer 설정 질문

0

68

2

consumer.poll 질문입니다.

1

69

2

mainThread.join() 관련 질문

0

57

2

문의

0

153

2

멀티 브로커 설정 중 포트 충돌 발생

0

120

2

Consumer Group 강의 Lag 질문있습니다!

0

107

2

강의 설명 및 코드 정리

0

174

2

실습 코드는 어디서 받나요.. 아무리 찾아도 엄네요..

0

151

1

java.nio.BufferUnderflowException 에러 발생합니다..

0

156

3

KafkaTimeoutError:

0

157

2

acks 1 이면 비동기가 아니지 않나요?!

0

184

2

Producer의 메시지 비동기화 전송 구현 강좌 내용 중 질문

0

109

2

자문자답: 데이터 누락된다고 하시는 분 참고하세요.

0

214

2

자문자답: kafka Error connecting to node utuntu-20.myguest.virtualbox.org:9092

0

200

2