복붙노트

[HADOOP] copyFromLocal 스위치를 사용하여 데이터를 hdfs로 이동

HADOOP

copyFromLocal 스위치를 사용하여 데이터를 hdfs로 이동

여기에 무슨 일이 일어나고 있는지 모르겠지만 내 로컬 파일 시스템의 디렉토리에서 hdfs에 지정된 디렉토리로 간단한 파일을 복사하려고합니다.

내 hdfs-site.xml에서 hdfs에 대한 디렉토리는 다음 속성을 사용하여 / home / vaibhav / Hadoop / dataNodeHadoopData가 될 것이라고 지정했습니다.

<name>dfs.data.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>

and 

<name>dfs.name.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>

나는 다음 명령을 사용하고있다.

bin/hadoop dfs -copyFromLocal /home/vaibhav/ml-100k/u.data /home/vaibhav/Hadoop/dataNodeHadoopData

u.data 파일을 로컬 파일 시스템 위치에서 Hdfs 디렉토리로 지정한 디렉토리로 복사합니다. 그러나 내가 이것을 할 때 아무런 일도 일어나지 않습니다. 오류도, 아무것도 아닙니다. 그리고 어떤 파일도 hdsf에 복사되지 않습니다. 내가 뭔가 잘못하고 있는거야? 모든 권한 문제가있을 수 있습니까?

제안 필요.

의사 분산 단일 노드 모드를 사용하고 있습니다.

또한 관련 메모에서 필자는 맵 축소 프로그램에서 inputFilePath /home/vaibhav/ml-100k/u.data를 가리 키도록 구성을 설정했는지 묻고 싶습니다. 그래서 자동으로 지정된 위치에서 hdfs로 파일을 복사하지 않겠습니까?

해결법

  1. ==============================

    1.dfs.data.dir 및 dfs.name.dir은 서로 다른 두 개의 기존 디렉토리를 가리켜 야한다고 생각합니다. 또한 구성에서 디렉토리를 변경 한 후에 namenode FS를 형식화했는지 확인하십시오.

    dfs.data.dir 및 dfs.name.dir은 서로 다른 두 개의 기존 디렉토리를 가리켜 야한다고 생각합니다. 또한 구성에서 디렉토리를 변경 한 후에 namenode FS를 형식화했는지 확인하십시오.

    HDFS로 복사하는 동안 대상을 잘못 지정하고 있습니다. 로컬 파일을 HDFS에 복사하는 올바른 구문은 다음과 같습니다.

    bin/hadoop dfs -copyFromLocal <local_FS_filename> <target_on_HDFS>
    

    예:

    bin/hadoop dfs -copyFromLocal /home/vaibhav/ml-100k/u.data my.data
    

    이렇게하면 HDFS의 사용자 홈 디렉토리에 my.data 파일이 생성됩니다. 파일을 HDFS로 복사하기 전에 먼저 디렉토리 내용과 디렉토리 생성을 마스터하십시오.

  2. from https://stackoverflow.com/questions/14704633/moving-data-to-hdfs-using-copyfromlocal-switch by cc-by-sa and MIT license