2016-10-13 10 views
3

복제 팩터 집합에 대한 데이터 노드 수가 적어서 Under-replicated 블록과 Mis-replicated 블록이 모두 발생한다는 것을 알고 있습니다.Hadoop HDFS - 누락 된 복제본과 Under Replicated 블록의 차이점

하지만 그 차이점은 무엇입니까?

사용 가능한 데이터 노드가 1 인 경우 복제 계수를 1로 다시 설정하면 복제되지 않은 블록과 누락 된 복제본 오류가 모두 지워집니다. 명령을 실행하여이 보장 HDFS는에서/ FSCK report

답변

6

을 fsck에서 "하둡 : 확실한 가이드"톰 화이트가 :이 그들의 목표 복제를 초과하는 블록이 과도하게 복제 된 블록

그들이 속한 파일. 일반적으로 오버 복제는 문제가되지 않으며 HDFS는 초과 된 복제본을 자동으로 삭제합니다.

Under-replicated blocks 이들은 속한 파일의 대상 복제를 충족하지 않는 블록입니다. HDFS는 대상 복제본 인 을 충족 할 때까지 복제되지 않은 블록의 새 복제본을 자동으로 만듭니다. hdfs dfsadmin -metasave를 사용하여 복제중인 블록에 대한 정보를 얻을 수 있습니다 (또는 복제 대기중인 ).

Misreplicated 블록 는이 블록 복제 배치 정책 (복제 배치 참조) 만족하지 않는 블록입니다. 예를 들어 멀티 트랙 클러스터에서 복제 수준이 3 인 경우 모든 블록 이 동일한 랙에있는 경우 복제본이 복원성을 위해 최소 2 개의 랙에 분산되어야하므로 블록이 잘못 복제됩니다. HDFS는 이 랙 배치 정책을 만족하도록 잘못 복제 된 블록을 자동으로 다시 복제합니다.

손상된 블록 복제본이 모두 손상된 블록입니다. 최소 하나의 noncorrupt가있는 블록 복제가 손상된 것으로보고되지 않습니다. namenode는 대상 복제가 충족 될 때까지 비 손상 복제본 을 복제합니다.

누락 된 복제본 클러스터에 복제본이없는 블록입니다.

희망 사항. 질문에 대한 답변입니다.