분류 전체보기

맵리듀스 개요
맵리듀스는 HDFS에 저장된 파일을 분산 배치 분석을 할 수 있게 도와주는 프레임워크다. 개발자는 맵리듀스 프로그래밍 모델에 맞게 애플리케이션을 구현하고, 데이터 전송 및 분산 처리, 내고장성 등 복잡한 처리는 맵리듀스 프레임워크가 자동으로 처리해준다. 요즘은 맵리듀스도 옛날 프레임워크라고 하지만, 그래도 맵리듀스를 이해하고 넘어가야 새로운 기술도 바로바로 이해할 수 있을 것이다(맵리듀스를 기반으로 신기술이 나온거라서...) 1. 맵리듀스의 개념 맵리듀스 프로그래밍 모델은 맵(Map), 리듀스(Reduce) 두 가지 단계로 데이터를 처리한다. 맵: 입력 파일을 한 줄씩 읽어 데이터를 변형 리듀스: 맵의 결과 데이터를 집계 예시로, 맵리듀스 프로그래밍 모델로 입력 파일의 단어 개수를 계산한다고 해보자. 맵..

HDFS 개요
1. 하둡 분산 파일 시스템 개요 HDFS는 수십 테라바이트 또는 페타바이트 이상의 대용량 파일을 분산된 서버에 저장하고, 많은 클라이언트가 저장된 데이터를 빠르게 처리할 수 있게 설계된 파일 시스템이다. 기존에도 DAS, NAS, SAN과 같은 대용량 파일 시스템이 있었으며, HDFS 또한 이러한 대용량 파일 시스템과 유사한 점이 많다. 우선, 위 3개의 대용량 파일 시스템을 알아보자. 명칭 특징 DAS Direct-Attached Storage. 서버에 직접 연결된 스토리지며, 외장형 하드디스크로 이해하면 된다. 여러 개의 하드디스크를 장착할 수 있는 외장 케이스를 이용하는 방식이다. NAS Network-Attached Storage. 일종의 파일 서버로, 별도의 운영체제를 사용하며 파일 시스템을 ..

하둡 개발 준비
1. 실행 모드 결정 하둡에는 아래와 같이 3가지 실행 모드가 존재한다. 독립 실행(Standalone) 모드: 기본 실행 모드. 환경설정 파일에 아무 설정 하지 않고 실행, 로컬 장비에서만 실행되어 로컬 모드(local) 라고도 함. 하둡에서 제공하는 데몬을 구동하지 않으므로 분산 환경을 고려한 테스트는 불가능. 단순히 맵리듀스 프로그램을 개발하고, 해당 맵리듀스를 디버깅하는 용도로만 적합하다. 가상 분산(Pseudo-Distributed) 모드: 하나의 장비에 모든 하둡 환경설정을 하고, 하둡 서비스도 이 장비에서만 제공하는 방식을 말한다. HDFS와 맵리듀스와 관련된 데몬을 하나의 장비에서만 실행하게 되며, 하둡을 처음 공부할 때 이러한 방식으로 테스트 환경을 구성한다. 완전 분산(Fully Dis..

하둡 살펴보기
1. 빅데이터 3대 요소 크기(Volume): terabyte, petabyte 이상이 빅데이터에 해당 속도(Velocity): 빅데이터는 매우 빠른 속도로 생성된다. 따라서 빠른 처리가 필요 다양성(Variety): 다양한 종류의 데이터들로 구성됨 2. 하둡 개요 구글이 논문으로 발표한 GFS(Google File System)과 맵리듀스(MapReduce)를 2005년에 더그 커팅(Doug Cutting)이 구현한 결과물 처음에는 오픈소스 검색 엔진인 Nutch에 적용하려고 시작, 이후 독립적인 프로젝트로 만들어짐 분산 파일 시스템인 HDFS(Hadoop Distributed File System)에 데이터를 저장해, 분산 처리 시스템인 맵리듀스를 이용해 데이터를 처리. 오픈소스 프로젝트라 소프트웨어..