Kafka 개요

less than 1 minute read

데브원영님의 카프카 강의를 바탕으로 공부한 내용을 정리하였습니다!

카프카를 최초로 고안한 개발자 중 한명 : 제이 크랩스 (Jay Kreps) // 링크드인


특징

  1. 높은 처리량
    1. 파티션
  2. 확장성
    1. 클러스터
    2. 브로커
  3. 영속성
    1. 파일시스템
    2. 페이지 캐시 메모리 영역
  4. 고가용성
    1. 클러스터
    2. 브로커 데이터 복제

데이터 레이크 아키텍쳐

  1. 초기 빅데이터 플랫폼
    1. 소스 애플리케이션 → 원천 데이터 → 파생 데이터 → 서빙데이터 → 클라이언트
  2. 람다 아키텍쳐
    1. 소스 애플리케이션 → 배치 레이어 → 서빙 레이어 → 클라이언트
    2. 소스 애플리케이션 → 스피드 레이어 → 클라이언트
      1. 카프카는 스피드 레이어에 위치함
  3. 카파 아키텍쳐
    1. 소스 애플리케이션 → 스피드 레이어 → 서빙 레이어 → 클라이언트
  4. 스트리밍 데이터 레이크
    1. 카파 아키텍쳐에서 서빙 레이어를 제거
    2. 카프카에서 스트리밍 데이터 레이크를 달성하기위해 티어트 스토리지 방식을 개발중

카프카 생태계

  1. producer
    • 이벤트 생성 애플리케이션
  2. consumer
    • 이벤트 처리 애플리케이션
  3. connect
    • 데이터 파이프라인을 운영하는 툴
    • source - producer 역할
      • 타 플랫폼을 소스로 하는 연동 (mysql, aws s3, etc..)
      • 데이터를 가져와서 토픽에 넣음
    • sync - consumer 역할
      • 특정 대상에 데이터 싱크 (jdbc, elasticsearch, etc..)
      • 토픽의 데이터를 타켓 애플리케이션에 넣음
  4. kafka cluster
    • 카프카 브로커의 군집 단위
  5. streams
    • 토픽의 데이터를 프로세싱하여 다시 토픽을 생성
-->

Categories:

Updated:

Comments