Hadoop Architecture
[출처]http://en.wikipedia.org/wiki/Apache_Hadoop
Hadoop는 크게 HDFS(Hadoop Distributed File System)와 MapReduce로 구분되어집니다.
HDFS layer는 파일 분산 저장 목적을 두고, MapReduece layer는 파일 분석을 위한 목적을 둡니다.
HDFS는 NameNode와 DataNode로 구성되며, NameNode는 master와 secondary로 구성되어집니다.
NameNode
파일에 대한 저장소 선택, 복제 개수 지정 등 데이터 노드를 관리
Master Node 역할을 하며 파일에 대한 메타 데이터를 저장하는 노드, 디렉토리 구조, 파일에 대한 각종 메타 데이터, 물리적 파일이 저장되어 있는 위치 등을 저장
주요한 메타정보를 가지고 있으므로 네임노드가 장애시에 HDFS는 장애 발생. SPOF
secondary NameNode
NameNode의 fsimage와 editlog를 저장
DataNode
DataNode는 실제 파일을 저장/읽기를 수행. 하나의 파일을 block 단위로 저장하는 역할
Block단위는 임의로 변경할 수 있으나 디폴튼 64MByte
DataNode에 저장된 파알은 정책에 따라 자동 분산 저장
MapReduce Layer
Job Tracker(Master)
Master에서 Job Tracker 실행되며, 클라이언트로부터 작업 요청을 받으면 실행
Task Tracker의 작업 할당 및 결과를 통합
Task Tracker의 상태 및 전체 작업 진행 상황 등을 지속적으로 감시
Task Tracker(Slave)
Task Tracker는 Task를 실행할 자바 프로세스를 발생
HDFS에 분산 저장된 데이터를 여러 대의 Task Tracker에서 병렬 처리
MapReduce 참고문서
http://www.linuxforu.com/2011/03/mapreduce-more-power-less-code-hadoop/
http://blog.trifork.com/2009/08/04/introduction-to-hadoop/
댓글 영역