빅데이터 에코시스템
http://wikidocs.net/22651
수집 기술
Flume
by Cloudera, 서버 로그 수집 도구, agent-collector
Kafka
by Linkedin, 대용량 실시간 로그 처리, publish-subscribe
NiFi
by Apache (NSA), 데이터 전달의 효율적 처리를 위한 모니터링시스템 (실시간처리)
flow-based programming
Sqoop
by Apache, RDBMS와 HDFS간 대용량 데이터 전송을 위한 솔루션
scribe (Calligraphus (aka “java scribe”))
by Facebook, 메시지 큐에 쌓인 로그를 DB나 메시지 큐fh wjsekf
Fluentd
저장 : 데이터소스
HDFS (Hadoop distributed file system)
(자바 언어로 작성된) 분산확장 파일시스템
S3
by Amazon
NOSQL
HBase
by Apache, HDFS 기반의 칼럼기반 NoSQL데이터베이스
Cassandra
by Apache(Facebook), HBase대비 설정/구성이 쉽고 성능이 좋음
MongoDB
by 10gen, 다중 Index가 필요한 구조라면 MongoDB를 선택하고, 데이터 항목 변경이 많고 unique access가 많은 경우라면 Cassandra가 적합
DynamoDB
by Amazon,
…
Hive
by Facebook, Datawarehousing용 솔루션
데이터 처리
MapReduce
HDFS상에서 동작하는 가장 기본적인 분석 기술
Spark
by Apache, In-memory기반의 범용 데이터 처리 플랫폼
Impala
by Cloudera, Hadoop기반의 분산 query Engine cf) Tajo
MapReduce대신, C++로 개발한 In-memory엔진사용
Presto
by Facebook, 대화형 질의를 처리하기 위한 분산query Engine
Pig
by Apache (yahoo), 복잡한 맵리듀스 프로그래밍을 대체할 피그 라틴(Pig Latin)이라는 자체 언어를 제공
Hcatalog
by Apache, Pig/MapReduce/Spark에서 Hive메타스토어 테이블에 액세스할 수 있는 도구
작업 관리 : 워크플로우
Airflow
by Apache(Airbnb), 데이터 흐름의 시각화/스케쥴링/모니터링이 가능한 워크플로우 플랫폼
Azkaban
by LinkedIn,
Oozie
by Apache, 하둡 작업을 관리하는 워크플로우 및 코디네이터 시스템
데이터 직렬화
빅데이터 에코 시스템이 다양한 기술과 언어로 구현되기 때문에 각 언어간에 내부 객체를 공유해야 하는 경우가 있습니다. 이를 효율적으로 처리하기 위해서 데이터 직렬화기술을 이용합니다.
Avro
Thrift
Protocol Buffers
클러스터 관리
YARN
데이터 처리 작업을 실행하기 위한 클러스터 자원(CPU, 메모리, 디스크등)과 스케쥴링을 위한 프레임워크
Mesos
by Apache, 인프라스트럭처 및 컴퓨팅 엔진의 다양한 자원(CPU, 메모리, 디스크)을 통합적으로 관리할 수 있도록 만든 자원 관리 프로젝트