
파티션
- 파티션은 Kafka 토픽을 구성하는 하위 단위이다.
- 하나의 토픽은 여러 개의 파티션으로 나눌 수 있으며, 이는 Kafka 확장성과 병렬 처리 능력을 향상시킨다.
파티션의 역할 및 중요성
데이터 분산 및 병렬처리
- 각 파티션은 독립적으로 데이터를 저장하고, 여러 브로커에 걸쳐 분산될 수 있다.
이를 통해 Kafka 는 데이터를 효율적으로 관리하고, 동시에 여러 소비자에게 서비스할 수 있다.
순차적 데이터 관리
- 각 파티션 내에서 메세지는 순차적으로 저장되며, 이 순서는 파티션 내에서 유지된다.
이는 데이터의 일관성과 정확한 순서 보장에 중요하다.
스케일 아웃
- 시스템 부하가 증가할 때, 더 많은 파티션을 추가하여 처리 능력을 확장할 수 있다.
상호작용
- 생산자는 메세지를 토픽의 파티션에 보낸다.
이 때, 특정 파티션에 메세지가 지정되거나 RR(라운드 방식)으로 분산될 수 있다.
소비자는 하나 이상의 파티션에서 데이터를 읽는다.
소비자 그룹을 사용하면, 각 소비자는 다른 파티션에서 메시지를 읽어 처리 부하를 줄일 수 있다.