강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

이수진님의 프로필 이미지
이수진

작성한 질문수

15일간의 빅데이터 파일럿 프로젝트

2.실시간 적재에 활용하는 기술 01 - HBase & Redis

카프카의 싱크로 Stom의 역할

작성

·

175

0

Kafka의 Sink로 HBase가 있는것으로 보이는데

HBase로 바로 연결안하고 중간에 Storm을 두는

이유를 좀더 구체적으로 알고 싶습니다.

추후 강의를 보면 Storm의 Event Detection 기능을

활용하기 위함이라고 나오는데 Kafka는 그런 기능이

없을까요?^^

답변 1

2

Big.D님의 프로필 이미지
Big.D
지식공유자

안녕하세요! 빅디 입니다.

많은분들이 실시간 아키텍처를 어려워들 하십니다. ^^;

우선 질문의 핵심은 스톰의 존재 이유로 보이는데요..

그전에 카프카의 존재가 왜 필요 한지는 이해가 됐다는 전제로 설명을 드리겠습니다.

스톰은 카프카로 부터 데이터를 빼내서 적재 하는것 외에 아래와 같은 주요 기능을 제공합니다.

1. 스톰의 볼트를 병렬로 구성해 고성능 처리를 한다던지..

2. 규칙(룰)을 정해서 데이터를 필터링 한다던지..

3. 병렬 처리중 집계함수를 제공 하고, 그 결과를 다시 하나로 모은 다던지..

4. 처리한 결과를 다양한 타겟 DB로 라우팅해 분리 저장한다던지..등

파일럿 프로젝트에선 볼트를 병렬로 구성하고, Esper를 이용해 윈도우타임을 적용해 데이터를 필터링 하고 레디스-HBase로 라우팅 하는 기능을 구현 하기위해 스톰이 사용 되었습니다.

만약 위와 같은 기능을 사용 안하고, Kafka Sink를 이용해 토픽-HTable 1:1 구조로 저장만 한다면..

'이수진'님 말씀처럼 스톰이 불필요 할수도 있습니다~  - 빅디 드림

이수진님의 프로필 이미지
이수진

작성한 질문수

질문하기