Aamazon EMR 아키텍처

salmonavocado's avatar
Sep 23, 2022
Aamazon EMR 아키텍처

스토리지

  • HDFS
    • 확장 가능한 하둡용 분산 파일 시스템
    • 데이터를 인스턴스 전체에 분산하고 여러 개의 데이터 사본을 다른 인스턴스에 저장하여 개별 인스턴스에 장애가 발생할 경우 데이터가 손실되지 않도록 보장
    • 클러스터가 종료될 때 회수되는 휘발성 스토리지
    • MapReduce 처리 중 중간 결과를 캐시에 저장하려는 경우 or 상당한 임의 I/O가 있는 워크로드에 유용
 
  • EMR 파일 시스템 ( EMRFS )
    • EMR 파일 시스템 (EMRFS) 은 모든 EMR 클러스터가 EMR에서 S3로 직접 일반 파일을 읽고 쓸 수 있도록 하는 HDFS 구현
    • EMRFS는 하둡과 함께 사용하기 위해 S3 영구 데이터를 저장하는 편리한 기능을 제공하면서 동시에 데이터 암호화 같은 기능도 제공
 
  • 로컬 파일 시스템
    • 로컬로 연결된 디스크 참조
    • 인스턴스 스토어 볼륨의 데이터는 EC2 인스턴스의 수명 주기 동안에만 유지
 
 

클러스터 리소스 관리

  • 클러스터 리소스 관리와 데이터 처리 작업의 일정 계획 담당
  • YARN을 사용해 여러 데이터 처리 프레임워크에 대한 클러스터 리소스를 중앙에서 관리
  • YARN을 사용하지 않은 기타 프레임워크와 애플리케이션도 있음
  • 각 노드에서 YARN 구성 요소를 관리하고 클러스터 정상 상태로 유지하며 EMR과 통신하는 에이전트도 있음
 
 

데이터 처리 프레임워크

  • 데이터를 처리하고 분석하는 데 사용되는 엔진
  • EMR에서 사용할 수 있는 기본처리 프레임워크 : 하둡 맵리듀스 / 스파크
 
  • Hadoop MapReduce
    • 분산 컴퓨팅을 위한 오픈 소스 프로그래밍 모델
    • 병렬 분산 애플리케이션 쓰기 프로세스 간소화
    • MAP
      • 데이터를 중간 결과라고 하는 키/값 페어 세트에 매핑
    • Reduce
      • 중간 결과 조합 + 추가 알고리즘 적용해 최종 결과 산출
 
  • Apache Spark
    • 빅데이터 워크로드 처리하기 위한 클러스터 프레임워크 및 프로그래밍 모델
    • Spark
      • 하둡과 마찬가지로 오픈소스 분산 처리 시스템이지만 비순환 방향 그래프 (DAG) 를 실행 계획에 사용하며 인 메모리 캐시를 데이터 세트에 활용
    • EMR 에서 Spark 실행할 때 EMRFS를 사용해 S3에 직접 액세스 간으
 
 

애플리케이션 및 프로그램

  • hive, spark streaming 등 라이브러리와 수많은 애플리케이션을 지원해 높은 수준의 언어를 사용한 워크로드 생성
  • Yarn 대신 고유의 클러스터 관리 기능을 갖춘 오픈 소스 프로젝트도 지원
 
 

written by salmonavocado🥑
 
Share article

salmonavocado