티스토리 뷰
빅데이터를 지탱하는 기술(저자 니시다 케이스케) 책 chapter1. 요약
1. 분산 시스템에 의한 데이터 처리의 고속화
Hadoop, NoSQL 출현
기존 RDB(관계형데이터베이스) 에 담을 수 없을만큼 많은 데이터가 발생
NoSQL 데이터베이스에 기록하고 Hadoop으로 분산 처리하기
Hadoop : 다수의 컴퓨터에서 대량의 데이터 처리
- java를 사용하여 MapReduce 동작
- SQL언어로 Hadoop을 사용하기위해 Hive 출현
NoSQL : 빈번한 읽기/쓰기 및 분산 처리가 강점
- document store : JSON과 같이 복잡한 데이터 구조를 저장. ex) MongoDB
- key-value store : 다수의 키와 값을 관련지어 저장 ex) Redis
2. 빅데이터의 기술
data pipeline
일반적으로 차례대로 전달해나가는 데이터로 구성된 시스템
데이터 수집
bulk 형
정기적으로 데이터 수집할 때 씀. batch processing
streaming 형
stream processing 을 통해 시계열 DB 같은 실시간 처리 지향
distribute storage (분산 스토리지)
- object storage (객체 스토리지)
- NoSQL database
distribute data processing (분산 데이터 처리)
- query engine ex) Hive
- ETL process
workflow management
전체 파이프라인 동작을 관리
3. 데이터 웨어하우스와 데이터 마트
데이터 파이프라인 기본형
데이터 소스 →→→ 데이터 웨어하우스 →→→ 데이터 마트
데이터 파이프라인 변형
데이터 소스 →→→ 데이터 레이크 →→→ 데이터 마트
data lake : raw data를 단순히 저장하기만 하는 스토리지일 뿐
4. 애드 혹 분석
Ad hoc analysis
- 일회성 데이터 분석
5. CDA 와 EDA
CDA
- Confirmatory Data Analysis 확증적 데이터 분석
- 가설을 세우고 검증
EDA
- Exploratory Data Analysis 탐색적 데이터 분석
- 데이터를 보면서 그 의미를 읽어내려함
6. 스몰데이터 탐색
스몰데이터
- GB
- 수백만~수천만 레코드
스크립트 언어
- R
- Python