2012-01-20 4 views
2

나는 많은 데이터를 hdfs에 저장하고있다. 그리고 한 폴더에서 다른 폴더로 파일을 옮겨야합니다.hadoop hdfs 파일 시스템 이름 변경에 관하여

일반적으로 파일 시스템의 이름 바꾸기 방법의 비용은 얼마입니까? 테라 바이트의 데이터를 이동해야한다고합니다.

대단히 감사합니다.

답변

3

HDFS 또는 파일 시스템을 올바르게 구현 한 경우 파일을 이동하면 이름 공간이 변경되고 실제 데이터는 이동하지 않습니다. 코드를 살펴보면 이름 노드의 네임 스페이스 (메모리 및 편집 로그)의 변경 만 수행됩니다.

  • 1) 파일명 -> blocksequence (네임 스페이스)
  • 2) 블록 -> machinelist ("아이 노드")
  • 다음 NameNode.java 클래스에서

    • 네임 노드는 두 가지 중요한 테이블을 제어

      첫 번째 부분 만 수정하면됩니다. 기계 목록에 대한 차단은 수정할 필요가 없습니다. 나는 그것을 밖으로 시도하지 않았다, 그러나 나는 OK이어야한다 짐작한다.

    3

    이름 바꾸기는 HDFS에서 메타 데이터 전용 작업입니다. 따라서 일반적인 POSIX 파일 시스템처럼 매우 저렴합니다. 데이터가 이동되지 않습니다. 관련된 유일한 서버는 namenode입니다.

    이름 바꾸기 소스 코드는 here입니다. 꽤 직설적 인.

    관련 문제