간단 카프카 정리

2023. 7. 8. 21:59·데이터 엔지니어링

하반기 카프카 도입예정이어서 간단히 정리

Zookeeper

  • 분산형 애플리케이션을 위한 코디네이션 서비스를 제공하는 오픈 소스 프로젝트
  • 카프카에서는 주키퍼를 사용하여 클러스터 상태, 설정 정보, 브로커 정보 등 중요한 메타데이터를 관리하고 저장
  • 클러스터 내에서 리더 선택이나 네이밍 서비스, 분산 동기화 등 서비스 제공
  • 주키퍼의 의존성 문제 때문에 카프카에서 주키퍼를 떼어내기 위한 작업 진행중

Kafka broker

  • 실행된 카프카 애플리케이션 서버 단위
  • 실제 메세지를 저장하고 전달하는 역할
  • 하나 이상의 브로커로 카프카 클러스터 구성

Topic

  • 메세지(데이터) 분류 단위
  • 여러개 파티션으로 나누어져 있어 병렬처리 가능

Partition

  • 한 파티션 내에서 메시지는 항상 순서대로 저장
  • 파티션을 복제하여 다른 브로커에 저장, 장애 발생시 데이터 손실을 방지하고 서비스 가용성 유지
  • 파티션은 여러 브로커에 분산하여 저장가능. 클러스터의 스토리지 용량을 최대한 활용할 수 있고, 단일 브로커에 대한 부하를 분산시킬 수 있음
  • 리더 파티션 : 카프카 클라이언트와 데이터 주고 받는 역할
  • 팔로워 파티션 : 리더 파티션을 지속 복제, 리더 파티션 동작이 불가할 경우 나머지 팔로워중 하나가 리더로 선출됨

Producer & consumer

  • 프로듀서는 메시지를 생성하고 해당 메시지를 카프카의 특정 토픽에게 전송
  • 컨슈머는 특정 토픽에서 메시지를 가져와서 처리하는 역할
    • 하나 이상의 파티션
    • 컨슈머는 컨슈머 그룹을 구성 할 수 있으며, 그룹 내의 각 컨슈머는 다른 파티션에서 메시지를 처리함으로써 병렬 처리를 수행 (목적에 따라 컨슈머 그룹 분리해서 운영)

토픽 셋에 컨슈머 하나
토픽 셋에 컨슈터 셋

Replication

  • 고가용성을 위해 파티션 복제기능으로 데이터 유실 방지
  • ISR : 리더+팔로워 파티션의 싱크가 된 묶음 (in-sync replica)
  • 레플리케이션이 3개 일때 broker 1 장애 발생시
    • 파티션 1에 리더 파티션이 브로커 2 or 브로커 3 중에 새로 할당
    • 카프카 클라이언트는 새로운 리더 파티션과 연동

 

레플리카 파티션 셋

 

저작자표시 (새창열림)

'데이터 엔지니어링' 카테고리의 다른 글

ksqlDB를 이용해 실시간 이벤트 스트리밍 최적화하기  (0) 2024.02.20
카프카를 통한 실시간 데이터 파이프라인 구축기  (0) 2023.09.27
Redash 쿼리 결과 join 하기  (0) 2023.06.21
firebase + BigQuery 이벤트로그 쿼리 Tip  (0) 2023.06.19
Airflow execution date와 실행시간에 대하여  (1) 2023.05.10
'데이터 엔지니어링' 카테고리의 다른 글
  • ksqlDB를 이용해 실시간 이벤트 스트리밍 최적화하기
  • 카프카를 통한 실시간 데이터 파이프라인 구축기
  • Redash 쿼리 결과 join 하기
  • firebase + BigQuery 이벤트로그 쿼리 Tip
haong_
haong_
블로그 이전합니다 >> www.hajinnote.me
  • haong_
    일단 시작하는 블로그
    haong_
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 데이터 엔지니어링
      • 이슈 해결 일지
      • 개발 환경 및 운영
        • Kubernetes
      • CS
        • 운영체제
        • 데이터베이스시스템
      • 프로그래밍
      • 알고리즘
      • 머신러닝
        • 통계학
        • 딥러닝
        • 데이터 분석
        • 논문
        • 프로젝트
      • 회고
      • 책 & 스터디
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    이
    데이터메시
    data mesh
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
haong_
간단 카프카 정리
상단으로

티스토리툴바