2017-01-24 8 views
1

다른 hadoop 설치의 datanode, namenode 및 secondary namenode 폴더 (모든 데이터 또는 정보 포함)가 있습니다.namenode 및 datanode 파일에서 Hadoop 복원

제 질문은 데이터 또는 정보를보기 위해 로컬 HDFS에있는 것을 어떻게 볼 수 있습니까?

복원 할 수있는 방법이있을 수 있지만 그 정보를 찾을 수 없습니다.

폴더 트리는 다음과 같이이다 : 네임 노드 & SecondaryNamenode를 들어

:

data/dfs/name 
├── current 
│ ├── VERSION 
│ ├── edits_0000000000000000001-0000000000000000007 
│ ├── edits_0000000000000000008-0000000000000000015 
│ ├── edits_0000000000000000016-0000000000000000022 
│ ├── edits_0000000000000000023-0000000000000000029 
│ ├── edits_0000000000000000030-0000000000000000030 
│ ├── edits_0000000000000000031-0000000000000000031 
│ ├── edits_inprogress_0000000000000000032 
│ ├── fsimage_0000000000000000030 
│ ├── fsimage_0000000000000000030.md5 
│ ├── fsimage_0000000000000000031 
│ ├── fsimage_0000000000000000031.md5 
│ └── seen_txid 

그리고 데이터 노드에 대한 : 사전에

data/dfs/data/ 
├── current 
│ ├── BP-1079595417-192.168.2.45-1412613236271 
│ │ ├── current 
│ │ │ ├── VERSION 
│ │ │ ├── finalized 
│ │ │ │ └── subdir0 
│ │ │ │ └── subdir1 
│ │ │ │ ├── blk_1073741825 
│ │ │ │ └── blk_1073741825_1001.meta 
│ │ │ │── lazyPersist 
│ │ │ └── rbw 
│ │ ├── dncp_block_verification.log.curr 
│ │ ├── dncp_block_verification.log.prev 
│ │ └── tmp 
│ └── VERSION 

감사합니다.

답변

1

다른 Hadoop 클러스터간에 데이터를 복사하는 표준 솔루션은 DistCp 명령을 실행하여 원본에서 대상으로 원하는 파일의 분산 복사본을 실행하는 것입니다.

다른 클러스터가 더 이상 실행되지 않고 이러한 백업 파일 만있는 경우, 보유한 파일을 새 Hadoop 클러스터에서 사용하는 디렉토리에 복사하여 복원 할 수 있습니다. 이 위치는 hdfs-site.xml의 구성 등록 정보에서 NameNode (데이터/dfs/이름 디렉토리)의 경우 dfs.namenode.name.dir이고 DataNode (데이터/dfs/data 디렉토리)의 경우 dfs.datanode.data.dir으로 지정됩니다.

이전 배포에서 동일한 버전의 Hadoop을 실행하는 경우에만 가능할 수 있습니다. 그렇지 않으면 호환성 문제가 발생할 수 있습니다. 이전 버전을 실행하려고하면 NameNode가 시작되지 않습니다. 최신 버전을 실행하려는 경우 먼저 hdfs namenode -upgrade을 실행하여 업그레이드 프로세스를 수행해야 할 수 있습니다.

파일 시스템 메타 데이터 만보고 싶다면 Offline Image ViewerOffline Edits Viewer 명령을 사용해야합니다. 이 명령은 fsimage를 디코드하고 찾아보고 파일을 각각 편집 할 수 있습니다.

+0

정말 고마워요, 당신의 대답은 내가 기대했던 것보다 낫습니다. 당신이 하둡의 전문가 인 것을 알았습니다. 해답을 가져 주셔서 감사드립니다. ./hdfs oiv -i $ HADOOP_HOME/namenode/current/fsimage -o fsimage.txt 명령을 제대로 실행할 수는 없지만 명령에 대해 더 자세히 검색해야 할 수도 있습니다. 종류는 안부 – PeterPa1va