본문 바로가기

[빅데이터]

[빅데이터] 분석

빅데이터 분색 개요

빅데이터 분석은 탐색과 분석을 반복하며 의미 있는 데이터를 추출해 문제를 찾고 인사이트를 얻어 의사결정을 내리는 단계다. 탐새과 분석의 경계는 매우 모호하지만 목적에 따라 분석 유형을 정의할 수 있다.

1. 기술 분석: 분석 초기 데이터의 특징을 파악하기 위해 선택, 집계, 요약등의 양적 기술 분석 수행

2. 탐색 분석: 업무 도메인 지식을 기반으로 대규모 데이터셋의 상관관계나 연관성을 파악

3. 추론 분석: 전통적인 통계분석 기법으로 문제에 대한 가설을 세우고 샘플링을 통해 가설을 검증

4. 인과 분석: 문제 해결을 위한 원인과 결과 변수를 도출하고 변수의 영향도 분석

5. 예측 분석: 대규모 과거 데이터를 하습해 예측 모형을 만들고, 미래를 예측

 

빅데이터 분석에 활용할 기술

* 임팔라(Impala)

하이브 : SQL On Hadoop 으로 MapReduce 대체, 배치성 분석

임팔라 : 실시간 빅데이터 분석 질의가 가능

임팔라의 아키텍처는 하둡의 분산 노드에서 대규모 실시간 분석을 하기 위해 Impalad, Statestored, Catalogd라는 컴포넌트가 설치된다. 

* 제플린(Zeppelin)

대용량 데이터를 효과적으로 탐색 및 분석하기 위해서는 대용량 데이터셋을 빠르게 파악하고 이해하기 위한 분석 및 시각화 툴이 필요하다. R => hadoop 을 직접 참조하거나 분산 병렬처리가 어렵다.

따라서 병렬처리와 복잡도를 해결하고 안정적인 사용을 위해 스파크를 기반으로 하는 제플린이 탄생

스파크 SQL을 작성해 하둡 클러스에 작업ㄷ을 요청하고, 처리 결과르르 다시 웹 UI에서 시각화해서 볼 수 있다.

이때 제플린의 클라이언트와 서버 사이에 REST 또는 웹 소켓 통신을 요청하게 되며, 요청된 결과에 해당하는 인터프리터가 작동해 타깃 시스템에 작업을 요청하게 된다.

* 머하웃(Mahout)

Hadoop 생태계에서 머신러닝 기법을 이용해 데이터 마이닝을 수행하는 툴

Hadoop 분산 아키텍처를 바탕으로 텍스트 마이닝, 군집, 분류등과 같은 머신러닝 기반 기술 내재화

추천(Recommendation): 사용자들이 관심을 가졌던 정보나 구매했던 물건의 정보를 분석해서 추천하는 기능

사용자 기반 추천: 유사한 사용자를 찾아 추천

아이템 기반 추천: 항목 간 유사성을 계산해서 추천 항목 생성

분류(Classification): 데이터셋의 다양한 패턴과 특징을 발견해 레이블을 지정하고 분류하는 기능

주요알고리즘: 나이브 베이지안, 랜덤 포레스트, Canopy등 지원

군집(Clustering): 대규모 데이터셋에서 새로운 특성으로 데이터의 군집들을 발견하는 기능

주요알고리즘: K-Means, Fuzzy, C-Means, Canopy등

감독학습(Supervised Learning): 학습을 위한 데이터셋을 입력해서 분석 모델을 학습시키는 머신러닝 기법

학습된 분석 모델을 이용해 예측하고 최적화

분류와 회귀 분석 기법

비감독학습(Unsupervised Learning): 학습 데이터셋을 제공하지 않고 데이터의 특징적인 패턴을 발견하는 머신러닝 기법

사람이 구분 및 그루핑하기 어려운 현상들을 자동으로 그루핑 하는데 사용

 

활용 방안 예시

스마트카 Managed 영역에 적재된 "스마트카 상태 데이터"와 "운전자 운행 데이터"를 이용해 감독학습-분류, 비감독학습-군집 머신러닝 수행

추천 기능을 활용해 "차량용품 구매 이력 데이터"를 분석

스마트카 운전자 가운데 유사 그룹 간의 구매 선호도에 따라 차량용품 추천 작업

 

* 스쿱(Sqoop)

RDBMS와 HDFS 사이에 데이터를 편리하게 임포트하거나 익스포트해주는 소프트웨어활용 방안으로 하이브, 임팔라, 제플린, 머하웃 등에서 분석된 결과를 외부 RDBMS 시스템에 편리하게 제공하기 위한 도구로 스쿱을 활용한다. 스쿱은 원래 하둡 생태계에서 수집 기술로 분류되지만 분석 결과를 외부에 제공하는 용도로 분석 도구로도 쓰인다.