저는 네임 노드를 이해하려고 노력하고 있습니다. 온라인 자료를 참조하고 하둡 (Hadoop)이라는 책을 참고했습니다 : 최종 가이드입니다.Namenode는 재시작 후 어떻게 전체 블록 정보를 재구성합니까?
나는 네임 노드는 같은 개념이 이해 : "편집 로그", "fsimage"를, 그리고 내 네임 노드에서 다음 파일을 볼 수 있습니다.
============================================== ==========================가 fsimage
가 된 블록의 위치를 저장하지 않는 것을 언급 한 그 책에서
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 23 22:53 edits_0000000000000000001-0000000000000000001
-rw-r--r-- 1 root root 1048576 Nov 23 23:42 edits_0000000000000000002-0000000000000000002
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 24 00:07 edits_0000000000000000003-0000000000000000003
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 24 21:03 edits_0000000000000000004-0000000000000000004
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 24 22:59 edits_0000000000000000005-0000000000000000005
-rw-r--r-- 1 root root 1048576 Nov 24 23:00 edits_0000000000000000006-0000000000000000006
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 25 21:15 edits_0000000000000000007-0000000000000000007
-rw-rw-r-- 1 vevaan24 vevaan24 1048576 Nov 25 21:34 edits_0000000000000000008-0000000000000000008
-rw-r--r-- 1 root root 1048576 Nov 26 02:13 edits_inprogress_0000000000000000009
-rw-rw-r-- 1 vevaan24 vevaan24 355 Nov 25 21:15 fsimage_0000000000000000006
-rw-rw-r-- 1 vevaan24 vevaan24 62 Nov 25 21:15 fsimage_0000000000000000006.md5
-rw-r--r-- 1 root root 355 Nov 26 00:12 fsimage_0000000000000000008
-rw-r--r-- 1 root root 62 Nov 26 00:12 fsimage_0000000000000000008.md5
-rw-r--r-- 1 root root 2 Nov 26 00:12 seen_txid
-rw-rw-r-- 1 vevaan24 vevaan24 201 Nov 26 00:12 VERSION
에게 그것.
나는 다음 한 질문 :
1)뿐만 아니라 edit logs
저장 블록 위치합니까? (새로운 거래를위한?)
2)? 내 의심은 NN이 파일 시스템 정보를 재구성하기 위해 fsimage
을 읽었지만, fsimage
에는 블록 위치 정보가 없으므로이 정보가 재구성되는 방법은 무엇입니까?
3) fsimage
은 블록 ID 만으로 저장되며, 그렇다면 데이터 노드간에 고유 한 BLOCK ID입니까? 블록 ID은 블록 주소과 동일합니까? 즉
세부 정보를 제공해 주셔서 감사합니다. 그러나 내가 아직 이해할 수없는 한 가지. 데이터 노드는 블록 형식의 데이터를 가지고 있지만 DN은 주어진 블록이 속한 파일을 어떻게 알 수 있습니까? DN이 NN에 블록 정보를 제공하지만이 방법이 DN의 주어진 파일에 대한 블록 주소를 찾는 데 어떻게 도움이되는지 동의합니다. – CuriousMind
블록은 블록 ID로 식별되며 고유합니다. 데이터 노드는이 정보를 보유합니다. – franklinsijo
이렇게 평균 DN은 블록 ID를 NN으로 보내고 fsimage는 블록 ID 정보를 가지므로 블록 ID를 기반으로 매핑을 수행합니다. 이것이 올바른 경우에는 의미가 있습니다. 그리고이 작업을 위해 id를 모든 hdfs 클러스터에서 고유하게 만들 필요가 있습니다.이 올바른 이해인가? – CuriousMind