본문 바로가기
OpenSource/Kafka

[Kafka] 카프카 기본 용어 정리

by SooooooooS 2024. 5. 8.
728x90

Topic

  • 데이터가 들어갈 수 있는 공간
  • 테이블, 폴더와 유사한 개념

Partition

어떤 토픽에 대해서 producer/consumer가 병렬처리방식으로 분산저장되는 단위
  • 하나의 토픽에 여러개의 파티션 존재
  • 0번 인덱스부터 시작
  • 큐와 유사하게 동작
    • Producer : 데이터를 쌓는다.
    • Consumer :오래된 순서대로 가져감
    • offset : 파티션 속 위치
  • 단, 컨슈머가 읽어도 데이터는 삭제되지 않는다.
  • 파티션 속에 데이터는 지정된 시간과 용량만큼 사용 후 삭제된다.
  • 늘릴수는 있지만 줄일 수는 없다.
  • 늘릴수록 컨슈머 분산가능
  • 파티션의 개수 >= 컨슈머의 개수

replication (복제)

높은 가용성(High Availibility)을 얻기 위해 각각의 partition을 각기 다른 브로커에 복제하는 역할
  • 서버에 장애가 생겼을 때 가용성을 높일 수 있다.
  • 파티션의 복제를 의미함
  • replication : 2
    • 원본 1개 = 리더 파티션, 복제 1개 = 팔로워 파티션
    • ISR : In Sync Replica
  • 많아질수록 리소스 사용량 및 시간이 많이 소요되므로 적정한 값을 찾아야 한다.

Broker

  • 카프카가 설치되어 있는 서버 단위
  • 3개 이상 브로커 사용 권장

Partitioner 파티셔너

  • 데이터를 어떤 파티션에 넣을지 결정한다.

Consumer Lag

  • 프로듀서가 마지막으로 넣은 offset - 컨슈머가 마지막으로 읽은 offset
  • 컨슈머 의 상태를 볼 때 사용
  • lag 모니터링 오픈소스 = Burrow

Pub/Sub

  • Publish / Subscribe 구조
  • Producer가 데이터를 만들어낸다.
  • Consumer가 데이터를 구독한다.

 

[참고 강의]

 

[지금 무료] [데브원영] 아파치 카프카 for beginners | 데브원영 DVWY - 인프런

데브원영 DVWY | 아파치 카프카란 무엇일까? 아파치 카프카는 어떻게 동작할까? 아파치 카프카의 개념은 무엇이 있을까? 궁금하시다면 이 강의를 선택하세요😎, 아파치 카프카(Apache Kafka), 핵심을

www.inflearn.com

 

728x90

'OpenSource > Kafka' 카테고리의 다른 글

[Kafka] Zookeeper 기본 개념 정리  (0) 2024.05.09