안녕세계
[Kafka] 핵심 개념 빠르게 알아보기 본문
[Kafka] 핵심 개념 빠르게 알아보기
Junhong Kim 2026. 1. 11. 16:02728x90
반응형
Topic
- Topic은 N개의 Partition으로 구성되어 있는 log 파일입니다.
- Topic은 시간의 흐름에 따라 Record(message)가 물리적인 파일에 순차적으로 write 됩니다.
Partition
- Topic을 N개로 쪼갠 로그 조각이 Partition 입니다.
- 개별 Partition 내에서 순서가 보장되는 단위
- Partition은 Kafka의 병렬 성능과 가용성 기능의 핵심 요소입니다.
- Record(message)는 병렬 성능과 가용성을 고려해 개별 Partition에 분산 저장됩니다.
Partition 과 Offset
- 논리/개념 계층

- 물리/저장 계층(Disk File 관점)
- Topic > Partition > Segment(로그 파일 조각) > Record Batch, (index/timeindex 파일들) > Record(message)
- Partition의 Record는 Offset으로 불리는 일련의 번호를 할당 받습니다.
- Offset은 Partition 내에서 Record 위치를 나타내는 번호이며, 이를 통해 Partition 내의 데이터 순서를 보장합니다.
- Topic > Partition > Segment(로그 파일 조각) > Record Batch, (index/timeindex 파일들) > Record(message)

Topic과 Partition의 병렬 분산 처리
- Record는 병렬 성능과 가용성을 고려하여 Topic 내 개별 Partition 들에 분산 저장됩니다.
- Topic의 Partition들은 단일 Broker뿐 만 아니라, N개의 Broker에 분산 저장될 수 있습니다.
- Kafka Cluster는 replication-factor 옵션을 통해 복제(leader/follower) 영역을 관리합니다.
- replication-factor란?
- Topic의 각 파티션을 총 몇 개의 복제본으로 저장할지 정하는 값.
- Topic 생성 또는 Partition 배치 시점에 이 값은 Broker 수 이하여야 한다.
- 예) Partition의 각 Replica는 서로 다른 Broker에 올라가야한다.
Broker가 2대 인데, replication-factor가 3인 경우 물리적으로 배치가 불가능하다.
- 예) Partition의 각 Replica는 서로 다른 Broker에 올라가야한다.

*Kafka Cluster와 Broker
Broker는 Kafka 서버 한 대이고, Cluster는 Broker 여러 대가 하나로 묶여 Kafka를 제공하는 전체 시스템입니다.
Kafka 공식 문서에서는 “Kafka는 하나 이상의 서버(=Broker)로 실행되고, 이 서버들이 Cluster를 이룬다”고 설명합니다.
728x90
반응형
'Server > Kafka' 카테고리의 다른 글
| [Kafka] Producer 동작 방식과 파티셔닝 전략 (0) | 2026.02.02 |
|---|
Comments