어디가서 기술 모른다고 기 죽지 말고 들어본 것처럼 말 할 필요가 있는 매니져분들을 위한 1분 짜리 하둡 정리 입니다.더 복잡하고 더 깊이 있는 내용은 '공부'를 해야 하기 때문에 제가 내세우는 취지와는 안 맞을 것입니다. 

하둡의 화두는 '분산' 입니다. 

하둡은 두가지 큰 요소의 결합입니다. '처리(계산)' 와 '저장' 입니다. 즉 '분산처리' 와 '분산저장' 이라고 보면 됩니다. 여러개의 저가형 컴퓨터를 마치 하나인것 처럼 묶어주는 기술이라고 보면 됩니다. (그래서 계산 능력과 저장 공간을 늘립니다)

분산저장

하둡 파일시스템(HDFS: Hadoop Distributed File System) 을 이용해서 파일을 적당한 블록 사이즈 (64MB)로 나눠서 각 노드 클러스터(각각의 개별 컴퓨터) 에 저장합니다. 또한 데이타 유실의 위험이나 사람들이 많이 접근할때 (Access) 할때의 부하처리를 위해서 각 블록의 복사본 (Replication)을 만들어 둡니다. 보통 복사본은 최소 3카피 정도입니다. 왜 이렇게 하냐면 고성능 서버에서 저장공간은 돈이 많이 들어가는 부분입니다. 그것을 저가형 저장소 여러개를 묶어서 마치 레이드 처럼 동작하게 하려는 목적으로 분산저장을 하는것입니다. 

분산처리

MapReduce 라는 프레임워크를 이용해서 계산합니다. 프레임워크라는 것이 중요합니다. 즉 분산처리를 위해서 프레임워크를 만들어 둔것입니다. 분산처리를 위해서 프레임워크에 맞추어서 코딩을 하고 하둡 시스템에서 그것을 실행하면 자동으로 분산처리를 해 줍니다. 
   
그 맵리듀스 (MapReduce) 라는 프레임 워크는 Map + Reduce 라는 두가지 형식으로 나누어 집니다. 개념은 간단합니다. Map 함수에서 데이타를 처리를 하고 Reduce 함수에서 원하는 결과값을 계산시킵니다. 

여러가지 설명이 있겠지만 정말 쉽게 설명을 하자면 하둡은 분산을 지원하기 위한 자바를 이용한 '가상 OS' 와 같은 개념으로 보면 가장 편리할 것입니다. (보통 OS 가 파일 시스템 과 잡 스케쥴러를 기반으로 구성됩니다)





+ Recent posts