2014-11-21 2 views
1

처리중인 파일의 정보를 HDFS에서 저장하고 싶습니다. HDFS에 저장된 파일의 Java 프로그램에서 파일 위치 및 바이트 오프셋을 읽는 가장 적합한 방법은 무엇입니까?Hadoop의 파일 아이디

Hadoop 1에 저장된 각 파일과 관련된 고유 한 파일 ID의 개념이 있습니까? 그렇다면 MapReduce 프로그램에서 어떻게 페치 할 수 있습니까?

답변

2

,
당신은 귀하의 모든 요구에 대한 org.apache.hadoop.fs.FileSystem 클래스를 사용할 수 있습니다.
1.You는 고유하게 식별 각 파일을 URI있어 얻을 수 있습니다 또는 당신이 사용할 수있는 getFileChecksum(Path path)
2.You는 getFileBlockLocations(FileStatus file,long start,long len)
TextInputFormat 모든 블록의 위치가 바이트 파일의 키 시작 위치, 오프셋을 부여합니다 모든 파일을 얻을 수 있습니다 HDFS의 파일 오프셋과 같지 않습니다.
org.apache.hadoop.fs.FileSystem 클래스를 사용하여 모든 필요를 충족시킬 수 있습니다. 다른 많은 방법을 사용할 수 있습니다. 더 나은 이해를 위해 그것을 통해 이동하십시오.
희망이 있습니다.