Kafka 개요
데브원영님의 카프카 강의를 바탕으로 공부한 내용을 정리하였습니다!
카프카를 최초로 고안한 개발자 중 한명 : 제이 크랩스 (Jay Kreps) // 링크드인
특징
- 높은 처리량
- 파티션
- 확장성
- 클러스터
- 브로커
- 영속성
- 파일시스템
- 페이지 캐시 메모리 영역
- 고가용성
- 클러스터
- 브로커 데이터 복제
데이터 레이크 아키텍쳐
- 초기 빅데이터 플랫폼
- 소스 애플리케이션 → 원천 데이터 → 파생 데이터 → 서빙데이터 → 클라이언트
- 람다 아키텍쳐
- 소스 애플리케이션 → 배치 레이어 → 서빙 레이어 → 클라이언트
- 소스 애플리케이션 → 스피드 레이어 → 클라이언트
- 카프카는 스피드 레이어에 위치함
- 카파 아키텍쳐
- 소스 애플리케이션 → 스피드 레이어 → 서빙 레이어 → 클라이언트
- 스트리밍 데이터 레이크
- 카파 아키텍쳐에서 서빙 레이어를 제거
- 카프카에서 스트리밍 데이터 레이크를 달성하기위해 티어트 스토리지 방식을 개발중
카프카 생태계
- producer
- 이벤트 생성 애플리케이션
- consumer
- 이벤트 처리 애플리케이션
- connect
- 데이터 파이프라인을 운영하는 툴
- source - producer 역할
- 타 플랫폼을 소스로 하는 연동 (mysql, aws s3, etc..)
- 데이터를 가져와서 토픽에 넣음
- sync - consumer 역할
- 특정 대상에 데이터 싱크 (jdbc, elasticsearch, etc..)
- 토픽의 데이터를 타켓 애플리케이션에 넣음
- kafka cluster
- 카프카 브로커의 군집 단위
- streams
- 토픽의 데이터를 프로세싱하여 다시 토픽을 생성
Comments