Hadoop

inthyes·2023년 7월 3일
0

bigdata

목록 보기
1/1

Hadoop (High-Availability Distributed Object-Oriented Platform)

  • 자바 소프트웨어 프레임워크로 빅데이터의 분산 저장과 분석을 위한 분산 컴퓨팅 솔루션

동작 흐름

데이터를 저장하기 전에 네임노드에서 분산을 하고 저장위치를 분배 → 여러개 중에 지정된 데이터 노드에 저장


하둡 버전

하둡V1

특징 : 분산저장, 병렬처리

  • 분산 저장 : 네임노드와 데이터노드로 나누어 처리
    • 네임노드 : 블록정보를 가지고 있는 메타데이터와 데이터 노드 관리
    • 데이터노드 : 데이터를 블록단위로 저장하면서 블록단위 데이터를 복제하여 데이터 유실에 대비
  • 병렬처리 : 잡트래커와 태스크트래커가 담당
    • 잡트래커 : 전체 진행상황을 관리하고 자원관리 처리
    • 태스크트래커 : 실제 작업을 처리하는 일 수행

하둡V2

특징 : V1에서 보안 발전시킨 것. 잡트래커의 병목현상 제거를 위해 YARN아키텍처 등장

  • 자원관리 : 리소스 매니저, 노드 매니저(클러스트당 만개 데이터 등록 가능)
  • 애플리케이션의 라이프 사이클 관리(작업 관리) : 어플리케이션 마스터(클러스트당 만개 데이터 등록 가능)
  • 작업 처리 : 컨테이너

하둡 v1의 작업 단위는 잡(job)이고, 하둡 v2의 작업 단위는 애플리케이션(application)

YARN 아키텍처가 도입되면서 이름은 변경되었지만 동일하게 관리

하둡V3

  • 에레이져 코딩 도입으로 기존의 블록 복제를 대체하는 방식으로 HDFS 사용량을 감소
  • YARN 타임라인 서비스를 도임하여 기존 타임라인 서비스 보다 많은 정보 확인가능
  • JAVA8 지원
  • 2개 이상의 네임노드를 지원하여 스탠바이노드 여러개 지원가능

HDFS(Hadoop Distributed FileSystem)

하둡 분산형 파일시스템(HDFS)은 하둡 네트워크에 연결된 기기에 데이터를 저장하는 분산형 파일시스템으로 실시간 처리보다는 배치처리 목적으로 설계

HDFS특징

블록단위로 나누어 저장

블록을 복제하여 중복저장

읽기 속도 향상

데이터 지역성

HDFS구조

마스터-슬레이브 구조 : 장치나 프로세스가 하나 이상의 다른 장치나 프로세스를 통제하고 통신 허브 역할을 하는 비대칭 통신 및 제어 모델

업로드중..

맵리듀스

대용량 데이터 처리를 위한 분산 프로그래밍 모델

특정 데이터를 가지고 있는 데이터 노드만 분석하고 결과만 받는것

맵리듀스 단계

MAP단계

  • Map은 분산되어있는 컴퓨터에서 처리하는 것
  • Map단계에서는 흩어져 있는 데이터를 key, value로 데이터를 묶어줌
  • key는 몇 번째 데이터인지, value는 값을 추출한 정보를 가짐
  • Map은 흩어져 있는 데이터를 Key, Value의 형태의 연관성 있는 데이터 분류로 묶는 작업

Reduce단계

  • 최종적인 통합관리를 위해 Reduce 해줌
  • 정리하면 Reduce는 Filtering과 Sorting을 거쳐 데이터를 추출, Map 작업 중 중복데이터를 제거하고 원하는 데이터를 추출하는 작업이다.

HDFS & 맵리듀스

하둡을 구성하는 각각의 요소들로 맵리듀스는 하둡의 계산을 담당, HDFS는 하둡의 스토리지를 담당

0개의 댓글