실시간 데이터 처리/Kafka

Kafka 특징

BUST 2018. 11. 26. 22:33

Kafka 특징

  • 대용량 실시간 로그 처리의 특화되어 설계가 되어 있다.
  • 범용 메시지 시스템에서 제공하는 다양한 기능은 제공되지 않는다.
  • 분산 및 복제 구성을 손쉽게 할수 있다.
  • 메세지 헤더를 지닌 TCP 기반의 프로토콜을 사용하여 프로토콜에 의한 오버헤드 제거하였다.
  • 개별적으로 메시지를 전송하는 것이 아닌 batch 형태로 broker에 한 번에 전달할수 있다.
  • 메모리 저장하는 기존 메시징 시스템과는 달리 파일 시스템에 저장을 한다.
    • 데이터의 영속성이 보장된다.
    • 메세지를 일정 기간(retention) 동안 저장을 하고 잇는다.
    • 메시지수가 많을수록 시스템 성능에 크게 영향을 받지 않는다.
  • consumer는 push 방식이 아닌 pull 방식으로 데이터를 가지고 간다.
  • consumer의 자신의 처리 능력만큼만 메시지가를 가지고 간다.
  • pull 방식을 통해 메시지를 batch 형태로 처리가 가능하다.