하둡(Hadoop)_맵리듀스(MapReduce)

2021. 11. 4. 15:32ComputerScience

728x90

mapReduce

Hadoop (High-Availability Distributed Object-Oriented Platform)

  • 분산 환경에서 빅데이터를 저장하고 처리할 수 있는 자바 기반의 오픈 소스 프레임 워크
  • 단일 서버에 수천대의 머신으로 확장할 수 있도록 설계되었다.

 

1. 맵리듀스(MapReduce)

  • 대용량의 데이터 처리를 위한 분산 프로그래밍 모델, 소프트웨어 프레임워크
  • 맵 리듀스 프레임워크를 이용하면 대규모 분산 컴퓨팅 환경에서 대량의 데이터를 병렬로 분석 가능
  • 프로그래머가 직접 작성하는 맵과 리듀스라는 두개의 메소드로 구성
    1. 흩어져있는 데이터를 수직화하여, 그 데이터를 각각의 종류별로 모으고(Map)
    2. 필터링과 sorting을 거쳐 데이터를 뽑아내는(Reduce) 분산처리 기술과 관련 프레임워크
      mapReduce flow

맵(Map)

  • 흩어져 있는 데이터를 연관성 있는 데이터들로 분류하는 작업. (key, value의 형태)

리듀스(Reduce)

  • Map에서 출력된 데이터에서 중복 데이터를 제거하고 원하는 데이터를 추출하는 작업

맵리듀스 잡(MapReduce Job) : Client 수행 작업 단위

  • 클라이언트가 수행하려는 작업 단위
  • 입력 데이터, 맵리듀스 프로그램, 설정 정보로 구성
  • 하둡은 jobMap Task와 Reduce Task로 작업을 나누어서 실행
    • job 실행 과정을 "제어"해주는 노드
  • 맵 리듀스 시스템 구성
    1. Client : 분석하고자 하는 데이터를 잡(JOB)의 형태로 JobTracker에게 전달
    2. JobTracker : 네임노드에 위치. 하둡 클러스터에 등록된 전체 잡(job)을 스케줄링하고 모니터링
    3. TaskTracker : 데이터노드에서 실행되는 데몬. Task를 수행하고, 잡 트래커에게 상황 보고

728x90

'ComputerScience' 카테고리의 다른 글

하둡(Hadoop)_HDFS  (0) 2021.11.04
아키텍쳐 vs 프레임워크 vs 디자인패턴  (0) 2021.09.27