티스토리 뷰

빅데이터/KAFKA

KAFKA - 1. Kafka란?

박강균 IT 2022. 3. 16. 13:12

1. Kafka의 이해

    Kafka란 단어를 들어본 사람도 있고, 들어보지 못한 사람도 있을 겁니다. 

    Kafak를 쉽게 풀어서 설명하면, 저희가 시스템 사용 시 발생하는 이벤트 로그나 시스템 로그를 

    처리 해주는 시스템 입니다.

 

2. Why Kafka ? 

    저희가 일반적으로 로그를 관리 할 때 생기는 문제점이 있습니다. 

    일반적으로 소규모 프로젝트나 서비스의 갯수의 적은 프로젝트 같은 경우에는

    로그를 수집함에 있어서 과부하나  복잡도가 상대적으로 낮습니다. 그래서 로그

    를 관리 하기가 생각보다 간편해요. 그렇지만 서비스의 갯수가 늘어나고 

    관리할 시스템이 많아지고 복잡해지면 그만큼 로그 수집도 복잡해집니다.

    그래서 중앙에서 Log를 관리해줄 시스템이 필요해졌어요. 그게 바로 Kafka입니다. 

     간단하게 말해서 서비스 사용 중 발생하는 이벤트나 로그들을 Kafka를 통해서 

     중앙관리를 하기 위해서 라는게 Why Kafka에 대한 대답이 될 수 있겠네요. 

 

3. How to Use

    실제로 사용하기에 앞서서, 주요한 항목들만  짚고 갈게요 나머지 항목들은 kafka를 구축하면서

    배우는 편이 훨씬 나을 거 같아요. 

   

이미지 출처: [Kafka] 기본 개념잡기 :: victolee (tistory.com)

    해당 아키텍쳐는 Kafka를 구성하는 형태에 대해서 잘 정리된 사진이에요 

    여기서 주요한 요소인 Partition 과 Topic만 간단하게 짚고 갈게요 

    Partition은 Data가 쌓일 저장소 개념이에요. 모든 데이터들은 들어온 순서대로 쌓이게 돼요

    해당 Partition과 연결되어 데이터를 읽을 서비스를 Consumer 라고 하는데 하나의 Partition은 

    하나의 Consumer에만 데이터를 제공 할 수 있어요 가장 중요한점은 사전 설계 단계에서 

    사용할 Consumer의 갯수만큼 Partition을 만들어두고 진행 하는게 좋아요. 왜냐면 Partition은 

    늘릴 순 있지만, 줄일 수 는 없거든요 .. 

 

 끝이에요. 이글을 읽으시는 여러분은 저 처럼 Kafka를 처음으로 접한 상태라고 생각해요. 앞으로 추가 포스팅을 통해서 

 좀 더 디테일하게 살펴볼게요.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함