issues
search
tonykang22
/
study
0
stars
0
forks
source link
03. Hadoop ecosystem
#161
Open
callmeaxxe
opened
1 year ago
callmeaxxe
commented
1 year ago
1. Hadoop
높은 확장성, 신뢰성을 보유한 분산 스토리지와 분산 처리 기능을 제공하기 위한 다수의 소프트웨어 집합체
분산 파일 시스템
HDFS(Hadoop Distributed File System)
리소스 관리자
YARN(Yet Another Resource Negotiation)
분산 데이터 처리
MapReduce
Hadoop Ecosystem
너무 많음
데이터 수집
Flume
NIFI
Kafka
데이터 처리
MapReduce
Spark
HIVE(SQL)
Impala(대화형 쿼리 엔진)
Flink
Kafka
데이터 저장
HDFS
HBASE(HDFS 상의 컬럼 기반 NoSQL DB, 실시간 랜덤 엑세스 및 업데이트)
Zookeeper(서버간 상호 조정)
워크플로우 관리 도구
Airflow
oozie
보안
Ranger
메타데이터 관리
Atlas
데이터 분석
Zeplin
시각화
Superset
callmeaxxe
commented
1 year ago
2. 빅데이터 플랫폼과 Hadoop ecosystem
빅데이터 플랫폼 구축 아키텍쳐
Ingestion and Processing
다양한 데이터 Source 로 부터 수집
Flume
여러 서버로 부터 로그 수집 및 전송
Scoop
RDBMS 의 데이터를 HDFS 에 저장할 수 있도록 지원
Kafka
실시간 데이터 수집 및 처리
Spark, Flink
실시간, 배치 데이터 처리
Spark, Hadoop MapReduce, Hive
Hive : SQL 을 통한 분산 데이터 배치 처리 (HiveQL)
Storage
HDFS
분산 오브젝트 스토리지
Analytics and Prediction
Impala, Trino
대화형 쿼리 엔진
Druid, Pinot
OLAP 데이터 스토어
이벤트 데이터 실시간 분석 지원
Spark, Mahout
ML 라이브러리 지원
Output
데이터 시각화 툴
Superset
대시보드 지원 등
Workflow Management
Airflow, Oozie
callmeaxxe
commented
1 year ago
3. Hadoop cluster 구축 고려사항
클러스터(Cluster)란?
여러 대의 컴퓨터들이 연결되어 하나의 시스템처럼 동작하는 컴퓨터들의 집합
주로 Master, Worker 로 구성됨
Master node
Worker node 조율
Worker 에서 실행되는 서비스 및 메타데이터 관리 등
HA 구성을 위해 2 or 3 대로 구성
Worker node
실제 작업이 수행되는 노드
Gateway node
설정파일 등을 통해 클라이언트 접근 통제
Master / Worker Architecture
Master 노드는 각 Worker 노드에 할당된 파티션 정보를 가지고 있고
Worker 노드는 할당된 파티션에 대한 데이터가 분산 백업되어 있어 특정 노드 장애 발생시에도 대응 가능
클러스터 규모 결정
스토리지 용량으로 결정하기
저장될 데이터 크기 예측
하루에 저장되는 데이터의 크기는 1TB
복제 전략 결정
복제 계수는 3
저장 기간 고려
3년
필요한 노드 수 결정
서버 한대의 저장 용량 : 5TB * 12
약 70대 필요
데이터 포맷
데이터 압축 여부
데이터 증가율 변화
데이터 수집 속도로 결정하기
데이터 수집 속도 예측
데이터 처리 속도 예측
1TB 데이터 분석
5분 이내에 결과를 저장
쓰기 속도는 디스크당 초당 50MB
디스크 70개가 병렬로 써야함
서버당 디스크가 24개씩 있는 경우
약 3대의 서버가 필요
워크로드에 따른 하드웨어 선정
CPU
Memory
I/O
1. Hadoop
Hadoop Ecosystem
데이터 수집
데이터 처리
데이터 저장
워크플로우 관리 도구
보안
메타데이터 관리
데이터 분석
시각화