
빅데이터 & 분산처리
Apache KafkaApache Kafka
Apache Kafka는 LinkedIn이 개발하고 2011년 오픈소스로 공개한 분산 이벤트 스트리밍 플랫폼이다. 초당 수백만 개의 메시지를 처리하며, 실시간 데이터 파이프라인과 스트리밍 분석의 표준이다.
핵심 개념
| 개념 | 설명 |
|---|---|
| Topic | 메시지를 분류하는 카테고리 |
| Partition | 토픽을 분할해 병렬 처리 |
| Producer | 메시지를 발행하는 시스템 |
| Consumer | 메시지를 구독·처리하는 시스템 |
| Consumer Group | 같은 토픽을 함께 처리하는 소비자 집합 |
| Offset | 파티션 내 메시지의 위치 |
아키텍처
Python 예시
Kafka vs RabbitMQ
| 항목 | Kafka | RabbitMQ |
|---|---|---|
| 처리량 | 매우 높음 | 중간 |
| 메시지 보존 | 설정 기간 보존 | 소비 후 삭제 |
| 순서 보장 | 파티션 내 보장 | 큐 내 보장 |
| 용도 | 이벤트 스트리밍 | 작업 큐 |
관련 개념
참고문헌
- •Kafka 공식 문서: kafka.apache.org
- •Narkhede et al. Kafka: The Definitive Guide