배치 처리가 아닌 실시간 처리가 필요할 경우, CEP(Complex Event Processing) 아키텍처를 활용한다. 데이터 수집 즉시, 전처리, 계산, 패턴 분석을 처리한다. 많이 사용되는 구성은 그림7과 같고, 각 레이어 별 대표적인 구성 요소는 표4와 같다.
<표4> CEP(Complex Event Processing)의 구성 요소
구성 요소
|
내용
|
Log Collector
| - 이벤트를 실시간으로 수집 - 예) Apache Flume |
Message Queue
| - 이벤트를 임시로 저장 - 예) Apache Kafka |
Real-time Pre-Processing
| - 실시간으로 전처리가 필요할 경우 사용 - 예) (Real-time Hadoop이라 불리는 Twitter에서 만든) Apache Storm |
Real-time Computing
| - 실시간 계산 및 실시간 패턴 분석 - 예) (대표적인 CEP 엔진인) Esper |
<그림7> CEP 아키텍처의 실시간(Real-time)처리
출처: http://hadoop.apache.org/