보조 네임노드
네임노드는 HDFS의 메타데이터를 관리하기 위해 에디트로그(EditLog)와 파일시스템이미지(FsImage) 파일을 사용한다.
에디트로그 : HDFS의 메타데이터에 대한 모든 변화를 기록하는 로그 파일. HDFS에 새 파일을 저장, 기존 파일 삭제, 파일 위치 변경 등 모든 파일의 상태를 기록. 용량 제한이 없이 파일 크기가 증가 할 수 있으며 네임노드 서버 로컬에 위치한다.
파일시스템이미지 파일 : 파일 시스템의 네임 스페이스(디렉터리명, 파일명, 상태정보)와 파일에 대한 블록 매핑 정보를 저장하는 네임노드의 로컬에 위치한다.
네임노드는 위의 두 파일을 사용하여 메타데이터를 관리 한다. 파일 시스템의 네임스페이스와 파일의 블록 매핑 정보를 메모리에서 유지하며 네임노드가 구동될 때 파일 시스템 이미지 파일과 에디트로그를 사용한다.
에디트로그 파일의 사이즈가 너무 크다면 메모리에 적재하는데 오랜 시간이 걸리며 상황에 따라 메모리에 로딩하지 못할 수도 있다. 이러한 문제를 해결하기 위해 HDFS는 보조 네임노드를 사용하여 주기적으로 네임노드의 파일시스템이미지 파일을 갱신하도록 한다.
이러한 작업을 체크포인트(checkpoint)라고 하며 보조 네임노드를 체크포인팅 서버라고 부르기도 한다. 체크포인팅이 완료되면 파일 시스템 이미지 파일은 최신으로 갱신되며 에디트로드 파일의 사이즈는 축소된다. 체크포인팅의 기본 값은 1시간이며 하둡 설정 파일(fs.checkpoint.period)에서 변경이 가능하다.
[참고자료]
시작하세요 하둡 프로그래밍(위키북스)
2013-10-25 / 강성욱 / http://sqlmvp.kr
'SW Engineering > Hadoop' 카테고리의 다른 글
맵리듀스(MapReduce) 구성 (0) | 2015.07.22 |
---|---|
맵리듀스(MapReduce) 개념 (0) | 2015.07.22 |
네임노드와 데이터노드 (0) | 2015.07.22 |
HDFS 블록 파일 시스템 (0) | 2015.07.22 |
HDFS 소개 (0) | 2015.07.22 |