Kakfa란?

빅데이터/처리 2015. 4. 26. 17:02
Kafka란??
- '빅'데이터 시대에 진정한 빅 데이터 처리 및 소화 가능한 솔루션

- LinkedIn이 만든 분산 메세지 시스템임.

- 길게는 A high-throughput distributed messaging system.

- 짧게는 처리량 쩌는 분산 메세지 시스템.

- 종종  scribe와 flume과 많이 비교가 되지만, 아키텍처 관점에 볼때는 RabbitMQ나 ActiveMQ같은 전통적인 메세징시스템에 더 가깝다!

장점은?

- 확장 가능

- 처리량 높음

- 분산처리 가능

- 응답 속도가 높음

- 데이터 디스크 저장

 


카프카 이용사례
- 링크드인: 실시간 Activity data를 수집에 적용
- 데이터시프트: 실시간 빅데이터 콜렉터로 사용
- 트위터: 스톰과 연계해서 사용
- 포스퀘어: 온라인, 오프라인 메세징 시스템에 적용


- 어떻게 동작함?

- Apache Kafka는 Zookeeper에 의해 관리 되며, Producer, Broker, Consumer로 나눠져 있다.

- 시스템에서 발생되는 메세지를 Producer가 Broker로 던져주고, Broker가 이 메세지를 분산 처리, Consumer가 처리된 데이터를 디스크에 저장하는 구조



 

- 성능은?

SSD : Broker 1대일때 56MB/s, 2대 일때 74.9MB/s, 3대 일때 96.6MB/s Throughput

HDD : Broker 1대일때 20.4MB/s, 2대 일때 35.8MB/s, 3대 일때 45.4MB/s Throughput

 

- 그래서 결론은?

Disk는 SSD를 사용하는 걸 권장하고, Broker의 수가 증가함에 따라 Throughput은 증가 한다.

Broker가 많다면 네트워크 bandwidth에 신경을 써야 함.


'빅데이터 > 처리' 카테고리의 다른 글

[Storm] Grouping 4가지  (0) 2015.04.26
Kafka or Flume? 고민될때..  (0) 2015.04.26
[Flume] 컴포넌트들  (0) 2015.04.26
[Flume] 활용방안 8가지  (0) 2015.04.26
블로그 이미지

JOKERGT

타고난 능력이란, 자연계의 초목과 같아 항상 탐구로써 가지를 쳐줘야 한다. https://www.linkedin.com/in/datajoker1

,