본문 바로가기
Hadoop

Secondary Name Node

by under_coverzzz 2022. 5. 28.
반응형

네임노드는 Local File System에 파일 시스템 메타 데이터를 저장을 함.

 

저장하는 메타 데이터 중 가장 중요한 두가지 

  1. fsimage ( Hadoop File System 메타데이터의 완전한 Snapshot )
  2. edits ( 메타데이터의 누적된 변경 내용 )

Edits 파일은 WAL(Write Ahead Log)로 지속적인 파일을 추가 조작을 하므로 I/O 작업의 부하가 적고, 성능을 낮추는 탐색 동작도 줄일 수 있음.

네임 노드가 재시작 하게되면, fsimage 파일을 메모리에 로드하고 edits 파일의 변경 내용을 반영하므로 파일 시스템의 최근 이미지를 메모리에서 볼 수 있음.

 

 

Secondary Name Node의 필요 이유.

  • 시간이 지날 수록 edits파일은 로그기반 시스템 처럼 점점 늘어나고 서버 장애 시간도 그만큼 늘어난다.
  • RDBMS 처럼 edits 파일은 fsimage 파일에 주기적으로 반영됨.
  • 그런데, 네임노드는 클러스터의 요청을 처리하느라 가용 자원(CPU, RAM)이 없을 수 있음.

 

Secondary Name Node의 역할

  • NameNode에게 edits 파일을 보관하고, edits.new 파일에 로그를 쓰라고 명령함.
  • NameNode의 fsimage와 edits 파일을 로컬 체크포인트 디렉터리에 복사함.
  • fsimage를 로드하고 edits를 위에서부터 반영하여 새로운 파일을 만든 후 fsimage를 디스크에 저장함.
  • fsimage를 네임노드에 보내고 , 그것을 바로 적용하도록 명령함.
  • NameNode은 edits.new 파일의 이름을 edits로 변경함.
반응형

'Hadoop' 카테고리의 다른 글

NameNode Federation  (0) 2022.06.02
Name Node의 고가용성(High Availability)  (0) 2022.05.31
 HDFS의 파일 시스템 특징  (0) 2022.05.15
Parquet 파일이란  (0) 2022.05.11
JDBC와 ODBC 정리  (0) 2022.05.11