[Hadoop] 하둡의 분산처리 시스템, YARN 개념 정리

2024. 11. 28. 15:14·Minding's Programming/Spark
목차
  1. YARN의 구조
  2. YARN의 동작
  3. Hadoop 3.0과 YARN 2.0
728x90
반응형

YARN은 Hadoop 2.0에서부터 지원되는 하둡의 Resourc Management Layer로, 세부 리소스 관리가 가능한 범용 컴퓨팅 프레임워크이다. HDFS 위에서 실행되며, YARN을 통해 Spark, MapReduce, Tez 등의 다양한 애플리케이션이 실행된다.

 

YARN의 구조

YARN의 구조 (출처: GeeksforGeeks)

 

YARN의 구조는 위 그림과 같다. 마스터 노드라고 할 수 있는 'Resource Manager'와 그 아래 슬레이브 노드인 'Node Manager'가 있다. 노드 매니저들은 리소스 매니저의 요구에 따라 자신이 가지고 있는 자원을 일부 넘겨주는 역할을 한다.

 

노드 매니저가 넘겨준다는 자원은 '컨테이너'라고 불린다. 컨테이너는 어떤 모듈을 실행시키는 구성 요소로, Java의 JVM과 비슷한 존재라고 생각할 수 있다. 

 

YARN의 동작

 

YARN의 동작 (출처: GeeksforGeeks)

YARN은 위와 같은 방식으로 동작한다. 하나씩 살펴보자면,

  1. Client에서 실행 코드(+환경 정보)를 Resource Manager(RM)에게 제출
  2. RM이 Application Manager(AM)를 실행시키기 위해 컨테이너를 할당함
  3. AM이 RM에 등록
  4. AM이 RM으로 코드 실행에 필요한 리소스 요구
  5. AM이 Node Manager로부터 컨테이너를 받아와 실행 시작
  6. 클라이언트가 요구한 실행 코드가 컨테이너에서 실행됨
  7. RM을 통해 클라이언트가 App 상태 모니터링
  8. App 실행이 완료되면 RM에 대한 등록을 취소(제거)

Hadoop 3.0과 YARN 2.0

최신 버전의 하둡인 3.0버전에서는 YARN도 2.0버전을 사용한다. YARN 1.0버전과 비교해서 달라진 점을 알아보자.

 

  • YARN 프로그램들의 논리적인 그룹(flow)으로 나눠서 자원 관리가 가능함.
    • 이를 통해 서버에서 Hbase를 기본 스토리지로 사용함
  • 파일 시스템(하둡 3.0)
    • 네임노드의 경우 다수의 스탠바이 네임노드를 지원함
    • HDFS, S3, Azure Storage, Azure DataLake Storage 등을 지원
728x90

'Minding's Programming > Spark' 카테고리의 다른 글

[Spark/Hive] Spark에서 Hive 메타 스토어 사용하기  (0) 2024.12.02
[Spark/pySpark] SparkSQL UDF(User Define Function)  (0) 2024.12.02
[Spark] Spark의 개념, 구조, 프로그램 실행 옵션  (2) 2024.11.28
[Hadoop] MapReduce 프로그래밍이란?  (0) 2024.11.28
  1. YARN의 구조
  2. YARN의 동작
  3. Hadoop 3.0과 YARN 2.0
'Minding's Programming/Spark' 카테고리의 다른 글
  • [Spark/Hive] Spark에서 Hive 메타 스토어 사용하기
  • [Spark/pySpark] SparkSQL UDF(User Define Function)
  • [Spark] Spark의 개념, 구조, 프로그램 실행 옵션
  • [Hadoop] MapReduce 프로그래밍이란?
Minding
Minding
Today's MindingMinding 님의 블로그입니다.
  • Minding
    Today's Minding
    Minding
  • 전체
    오늘
    어제
    • 울고넘는 딥러닝 (278)
      • Minding's Baseball (57)
        • MLB Statcast (29)
        • 머신러닝으로 홈런왕 예측하기 (3)
        • 야구칼럼 (12)
        • 야구 규칙, 용어 (1)
        • 2022-23 질롱 코리아 (8)
        • 류현진 등판경기 (4)
      • Minding's Programming (185)
        • 프로그래머스 코딩테스트 (21)
        • Knowledge (44)
        • Numpy & Pandas (6)
        • Excel (3)
        • Git (1)
        • Pygame (11)
        • CV (3)
        • Tensorflow tutorial (4)
        • Kaggle and Dacon (4)
        • 에러 코드 (8)
        • FastAPI (8)
        • Airflow (29)
        • Crawling (6)
        • Django (14)
        • AWS (18)
        • Spark (5)
      • Minding's Reading (30)
        • 머신러닝 딥러닝에 필요한 기초 수학 with 파이.. (2)
        • 칼만필터는 어렵지 않아 (11)
        • 밑바닥부터 시작하는 딥러닝 (6)
        • 메이저리그 야구 통계학 2e (8)
        • 논문읽기 (2)
        • 빅데이터를 지탱하는 기술 (1)
      • Minding's Life (5)
        • 주식 (4)
        • 각종 소식 (1)
  • 블로그 메뉴

    • 홈
    • Baseball
    • Programming
    • Reading
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    머신러닝
    MLB
    넘파이
    파이썬
    야구
    코딩테스트
    칼만필터
    django
    Airflow
    데이터 엔지니어
    FastAPI
    메이저리그
    mlb stats api
    데이터분석
    에어플로우
    파이썬게임개발
    Python
    게임개발
    질롱코리아
    django python
    칼만필터는어렵지않아python
    딥러닝
    KBO
    AWS
    칼만필터는어렵지않아
    칼만필터는어렵지않아파이썬
    pygame
    파이게임
    KalmanFilter
    프로그래머스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Minding
[Hadoop] 하둡의 분산처리 시스템, YARN 개념 정리

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.