하둡이라는 분산처리시스템에 대해 기초적인 개념과 구조를 파악하고 이해를 해보려고 한다.
1. 하둡이란
하둡은 High-Availability Distributed Object-Oriented Platform의 줄임말로써 간단하게 말하면 분산 환경에서 대용량 데이터를 분산처리할 수 있는 자바 기반의 오픈 소스 프레임워크이다.
일반적으로 하둡은 하둡파일시스템(HDFS)와 매리듀스(MapReduce) 프레임워크로 시작되었으나 현재는 빅데이터의 저장, 처리, 실행 등등의 다양한 역할을 수행하는 하둡 생태계를 의미하는 의미로 확장되었다.
2. 하둡의 구성 요소
· 하둡 분산형 파일 시스템(Hadoop Distributed File System, HDFS)
수십 테라바이트 또는 페타바이트 이상의 대용량 파일을 분산된 서버에 저장, 빠르게 처리할 수 있는 파일 시스템이다. HDFS는 블록 구조의 파일 시스템으로 파일을 블록 크기가 128M인 블록으로 나누어 분산된 서버에 저장한다.
HDFS의 아키텍처는 아래와 같다.
- 파일은 특정 사이즈(128M)의 블록으로 나뉘어 저장되며 하나의 블록은 3개로 복제된다. 복제가 되는 이유는 한개의 컴퓨터에서 장애가 발생해도 다른 컴퓨터를 통해 데이터를 이용할 수 있다. 또한, 모니터링 시스템 지정 후 일부 문제가 발견될 때 이를 다시 복제하도록 조치할수 있게 된다.
- 마스터 역할을 하는 NameNode서버와 슬레이브 역할을 하는 DataNode 서버 여러대로 구성된다.
- NameNode서버는 HDFS의 모든 메타데이터를 관리한다.
- HDFS Client에서는 NameNode 서버의 메타데이터를 통해 저장된 파일에 접근한다.
- DataNode는 주기적으로 NameNode에 블록 리포트(노드에 저장된 블록 정보)를 전송한다. 이를 통해 NameNode는 데이터 노드의 정상 유무를 확인할 수 있다.
· 맵리듀스
대용량 데이터 처리를 위한 분산 소프트웨어 프레임워크이다. 맵리듀스 프레임워크를 이용하면 대규모 분산 컴퓨팅 환경에서 대량의 데이터를 병렬로 분석 가능하다.
맵리듀스에 대한 내용 기초적인 내용은 지난 포스팅 맵리듀스에서 확인이 가능하다.
· Hadoop YARN
Yet Another Resource Negotiator의 줄임말로써 분산 환경에서의 자원 관리를 담당한다.
YARN은 주요한 세 가지 핵심 컴포넌트인 Resource Manager, Node Manager, Application Master를 가지고 있다.
RM(Resource Manger)는 클러스터 자원을 중재하는 마스터로 분산 어플리케이션을 관리하며 스켈줄링 역할에 주로 수행한다. 애플리케이션이 자원을 사용하려면 RM의 스케줄러는 정책에 따라 자원을 할당할지를 결정한다.
NM(Node Manager)은 하둡 클러스터의 개별 컴퓨팅 노드, 즉 인프라를 관리한다. RM과 함께 최신의 상태 공유하고 애플리케이션 컨테이너들의 생명 주기를 관리한다. 또한 컨테이너 자원 모니터링, 노드 상태 등을 관리한다.
AM(Application Master)는 애플리케이션을 샐행, 조정하는 데몬이다. RM과 컨테이너 할당과 같은 자원 교섭 및 태스크 실행을 하고 NM 과 함께 모니터링 한다.
3. Hadoop의 특징
· Distributed : 데이터를 block단위로 나누어 저장
· Scaleable : 저장 용량이 증대되는대로 컴퓨터를 추가(10대 를 이용중에 용량이 커지게되면 90대를 추가하여 100대를 운용)
· Falut-tolerant : Node가 실패해도 NameNode가 실패를 감지하고 다른 node로 작업을 할당한다. 즉 실패 혹은 고장이 나는 경우에도 정상적으로 동작함.
4. Hadoop 에코시스템
중앙 시스템을 기준으로 여러가지 소프트웨어가 추가된 시스템을 에코 시스템이라고 한다. 하둡이라는 분산 처리 시스템을 기준으로 Hbase, Hive , Zookeeper등의 여러 소프트웨어가 추가되었고 이러한 환경을 하둡 에코 시스템이라고 한다.
'분산처리 > Hadoop' 카테고리의 다른 글
하둡(HDFS) 실습 (0) | 2022.07.28 |
---|---|
하둡의 설치 (0) | 2022.07.28 |
맵리듀스란? - 기본 (0) | 2022.07.25 |