Hadoop(하둡): 대용량 데이터를 분산 처리할 수 있는 자바 기반의 오픈 소스 프레임워크 분산 파일 시스템인 HDFS(Hadoop Distributed File System)에 데이터를 저장하고, 분산 처리 시스템인 맵리듀스(MapReduce)를 이용해 데이터를 처리
NoSQL
관계 데이터 모델과 SQL을 사용하지 않는 데이터베이스 시스템
일관성 보다는 가용성과 확장성에 중점을 두고 있음
비정형 데이터의 저장을 위해 유연한 데이터 모델을 지원하고, 관계 데이터베이스와 동일한 데이터 처리가 가능하면서도 더 저렴한 비용으로 분산 처리와 병렬 처리가 가능 (ex. H베이스, 카산드라, 몽고DB, 카우치DB 등)
분석 기술
텍스트 마이닝(text mining): 반정형 또는 비정형 텍스트에서 자연어 처리 기술로 정보를 추출하고 가공함
오피니언 마이닝(opinion mining): SNS 등에 기록된 사용자들의 의견을 수집하고 분석하여 특정 제품이나 서비스 등에 대한 선호도 추출
소셜 네트워크 분석(social network analysis): 소셜 네트워크의 연결 구조나 강도 등을 바탕으로 소셜 네트워크에 나타난 영향력, 관심사, 성향, 행동 패턴 등을 추출
군집 분석(cluster analysis): 데이터 간의 유사도를 측정한 후 이를 바탕으로 특성이 비슷한 데이터를 합쳐가면서 최종적으로 유사 특성의 데이터 집합을 추출
표현 기술
R언어: 데이터 분석을 통해 추출한 의미와 가치를 시각적으로 표현하기 위해 사용
이전 데이터 vs 빅데이터
빅데이터 저장 기술: NoSQL
NoSQL은 관계 데이터베이스의 경쟁자가 아님
NoSQL의 종류: 어떤 데이터 모델로 데이터를 저장하는지에 따라 4가지로 분류
키-값(key-value) 데이터베이스: 키와 값이 쌍으로 데이터가 저장됨 (ex. DynamoDB, Redis)
문서 기반(document-based) 데이터베이스: 키와 문서의 쌍으로 데이터를 저장 (ex. MongoDB, CouchDB)
컬럼 기반(column-based) 데이터베이스: 컬럼 패밀리(column family)와 키의 쌍으로 데이터를 저장 (ex. BigTable, HBase, Cassandra)
관계 데이터 모델의 테이블과의 유사성
컬럼 패밀리는 테이블에서 한 개의 튜플을 구성하는 속성들의 모임으로 볼 수 있음
키가 각 튜플을 구부하는 것처럼 키로 각 컬럼 패밀리를 식별함
그래프 기반(graph-based) 데이터베이스: 노드에 데이터를 저장하고 간선으로 데이터 간의 관계를 표현하는 그래프 형태 (ex. Neo4J, OrientDB)
빅데이터 분석 기술: 데이터 마이닝
데이터 마이닝 vs 기계 학습
분석 목적이 발견 → 데이터 마이닝
분석 목적이 예측 → 기계 학습
데이터 마이닝
개념: 대량의 데이터 안에 숨겨진 지식을 발견하기 위해 규칙과 패턴을 찾아내는 기술
대표적인 분석 기법: 분류 분석, 군집 분석, 연관 분석
분류 분석: 새로운 데이터가 어떤 그룹 또는 등급에 속하는지 예측하는데 주로 사용 (ex. 로지스틱 회귀모형, decision tree, k-최근접 이웃모형, 베이즈분류모형, 인공신경망, 지지벡터기계, 유전 알고리즘 등)
군집 분석: 미리 정해진 기준이 없는 상태에서 유사한 특성을 공유하는 데이터들을 여러 개의 독립적인 군집으로 나누는 것 (ex. 계층적 군집 분석(최단 연결법, 최장 연결법, 평균 연결법, 중심 연결법, 와드 연결법)과 비계층적 군집 분석(k-중심 군집))
연관 분석: 데이터 간의 발생 빈도를 분석하여 그 속에 숨겨진 연관 규칙(association rule)을 파악하는 방법 (ex. Apriori 알고리즘)