본문 바로가기
츄Log/끄적끄적

Hadoop 에코시스템 먹방 -1. Hadoop 개요

by 츄츄🦭 2024. 6. 11.
728x90

 

데이터에 대해 아무것도 모르는데 데이터 분석 요청 업무가 들어왔습니다. 

주변에 자문을 구하더라도 개요에 대해서는 알아야 하므로 Hadoop 에코시스템에 대해 알아보았습니다.

 

시작~

 

Hadoop

 

등장배경
> 데이터 급증 & 큰 데이터를 효과적으로 병렬처리하는 구조를 가진 프레임워크가 필요했음

특징
> 각 데이터에 대해 복제본을 생성한 후 안전하게 보관함 => HDFS
> 큰 데이터를 나눠서 작업한 후 그 결과물을 합쳐줌 => MapReduce
> 클러스터가 scalable해서 컴퓨터를 추가하거나 제거하여 자원을 유연하게 조절할 수 있음

HDFS (Hadoop Distributed File System)
> 하둡 클러스터에서 사용되는 저장소
> 여러 서비스들이 이 저장소를 통해 파일을 공유할 수 있음
> 일부 서버가 문제가 생기더라도 데이터가 유실되지 않는 구조임

YARN (Yet Another Resource Negotiator)
> 하둡 클러스터의 자원 관리와 작업 스케줄링 및 모니터링을 해줌

MapReduce 
> 대용량 데이터를 분산하여 병렬로 처리할 수 있는 프레임워크임
> 일부에서 실패하더라도 다른 서버에서 실패한 작업을 수행해줌 

하둡 에코시스템
> 코어프로젝트(HDFS, YARN, MapReduce) 뿐 아니라 다양한 서브프로젝트들이 유기적으로 결합될 수 있고 이를 하둡 에코시스템이라고 부름  

이 중 몇가지 프레임워크를 알아보자

Spark
> MapReduce와 유사하게 대용량 데이터를 처리할 수 있는 컴퓨팅 프레임워크
> 중간결과물을 실행되는 서버의 파일시스템에 저장하는 MapReduce와 달리, 중간 결과물을 메모리에 저장하여 속도를 높힘
> 파이썬, 스칼라, 자바 등 다양한 언어를 지원함

Oozie
> 하둡 작업들을 연계해주는 스케줄링 프레임워크

Hive
> SQL과 유사한 인터페이스로 HDFS에 저장된 데이터를 분석해주는 데이터 웨어하우스 프레임워크

Zookeeper
> 분산 서버들 사이의 설정값과 상태를 공유 및 동기화해주는 코디네이션 시스템

Kafka
> 대용량 이벤트를 실시간으로 스트리밍해주는 메세지 프레임워크 

HBase
> 하둡에서 사용되는 컬럼기반 분산 데이터베이스

 

728x90