Bigdata Platform Architecture
요구사항을 충족시키기 위해 구성할 수 있는 빅데이터 플랫폼의 아키텍쳐는 다음과 같다. 이러한 구조를 데이터 파이프라인이라 부른다.
Source
비스니스 데이터와 운영 데이터가 생성되는 단계이다. 어플리케이션이나 회사 내부에서 사용되는 데이터베이스(주로 정규화된 데이터가 테이블의 형태로 저장되는 OLTP DB), click, scroll 이벤트와 같이 클라이언트가 생성하는 이벤트를 수집하는 이벤트 컬렉터, 서버의 작업에 따라 생성되는 로그, 회사의 외부에서 가져올 수 있는 정보인 API, 파일, 오브젝트 스토리지 등이 Data source로 사용된다.
Integration and Processing
Source로부터 수집된 데이터를 추출, 변형, 적재(ETL)하는 단계이다. Batch의 형태 또는 Streaming의 형태로 데이터를 수집할 수 있다. Flume, Scoop, Kafka, Nifi, Fluentd와 같은 SW를 통해 데이터를 추출하며 MapReduce, Spark, Hive, Flink, Kafka와 같은 SW를 통해 데이터를 처리한다.
Storage
쿼리화와 프로세싱이 가능한 형태로 데이터를 저장하는 단계
Analytics and Prediction
데이터 분석가와 데이터 사이언티스트가 데이터를 탐색하고 분석하는 단계
Output
분석 결과를 화면에 표시하여 보고하거나 제작된 학습모델을 애플리케이션에 탑재하는 단계
Workflow Management
앞선 데이터 파이프라인의 단계들을 오케스트레이션하며 관리하는 단계