-
[Apache Kafka] 카프카 기본 개념 정리Apache Kafka 2024. 11. 13. 22:36

Kafka Structure
클러스터 (Cluster)
- 여러 개의 서버(브로커)를 모아놓은 것
- 카프카는 여러 서버가 함께 일하면서 데이터를 빠르고 안정적으로 처리한다.
브로커 (Broker)- 클러스터 안에서 실제로 데이터를 주고 받는 역할을 하는 하나의 서버이다.
토픽 (Topic)- 데이터를 분류하여 보관하기 위한 카테고리이다.
- 클러스터 내에서 유일해야 한다.
파티션 (Partition)- 각 토픽에 저장되는 데이터를 여러 파티션으로 구분한다.
- 파티션들은 여러 브로커에 분산하여 위치시킬 수 있다.
세그먼트 (Segment)- 각 파티션에 저장되는 데이터를 특정 기준에 따라 나눈 조각이다.
프로듀서 (Producer)- 데이터를 생성하여 카프카 브로커로 보내는 역할을 한다.
- 특정 토픽을 선택하여 데이터를 보낸다.
컨슈머 (Consumer)- 카프카 브로커에서 데이터를 읽어오는 역할을 한다.
- 하나 이상의 토픽을 구독한다.
컨슈머 그룹 (Consumer Group)- 여러 개의 컨슈머를 하나의 그룹으로 묶어, 서로 협력하며 데이터를 처리할 수 있도록 하는 개념이다.
- 컨슈머 그룹 내 모든 컨슈머는 동일한 토픽을 구독한다
클러스터 ├── 브로커 1 │ ├── 토픽 A │ │ ├── 파티션 1 │ │ │ └── 세그먼트 1,2,3.. │ │ ├── 파티션 2 │ │ └── 파티션 3 │ └── 토픽 B │ ├── 파티션 1 │ └── 파티션 2 ├── 브로커 2 └── 브로커 3 프로듀서 → 브로커의 특정 토픽으로 데이터 전송 컨슈머 그룹 (컨슈머 1, 컨슈머 2, ...) → 브로커에서 같은 토픽의 각 파티션을 나눠서 읽음'Apache Kafka' 카테고리의 다른 글
[Apache Kafka] 카프카의 멱등성과 트랜잭션 (0) 2024.11.17 [Apache Kafka] 카프카 컨슈머 파헤치기 (0) 2024.11.17 [Apache Kafka] 카프카 프로듀서 파헤치기 (0) 2024.11.16 [Apache Kafka] 카프카 CLI 정리 (0) 2024.11.14 [Apache Kafka] 간단히 카프카 실습하기 (0) 2024.11.11