복붙노트

[HADOOP] hadoop fs -copyToLocal 명령을 사용하여 기존 파일을 덮어 쓰는 방법

HADOOP

hadoop fs -copyToLocal 명령을 사용하여 기존 파일을 덮어 쓰는 방법

다음을 사용하여 HDFS에서 복사하는 동안 기존 파일을 덮어 쓸 수있는 방법이 있습니까?

hadoop fs -copyToLocal <HDFS PATH> <local path>

해결법

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

    1.

    fs -copyFromLocal -f $LOCAL_MOUNT_SRC_PATH/yourfilename.txt your_hdfs_file-path
    

    그래서 -f 옵션이 당신을 속인다.

    또한 -copyToLocal에서도 작동합니다.

  2. ==============================

    2.먼저 삭제 한 다음 쓸 수 있습니다.

    먼저 삭제 한 다음 쓸 수 있습니다.

    hadoop fs -rmr 는 경로 자체를 포함하여 hdfs에서 주어진 경로 밑의 모든 것을 제거합니다.

    rm -rf 는 로컬 파일 시스템에서 제거합니다.

    디렉토리에 다른 파일이 없는지 확인하십시오.

  3. ==============================

    3.아래 명령을 사용하여 도움이되었습니다.

    아래 명령을 사용하여 도움이되었습니다.

    hadoop fs -put -f <<local path>> <<hdfs>>
    

    하지만 put docs에서 :

  4. ==============================

    4.-f 옵션이 트릭을 수행했습니다.

    -f 옵션이 트릭을 수행했습니다.

    예:

    bin>hdfs dfs -put -f D:\DEV\hadoopsampledata\mydata.json /input
    
  5. ==============================

    5.강제 옵션은 명령 중 하나 (get / copytolocal)에 없습니다.

    강제 옵션은 명령 중 하나 (get / copytolocal)에 없습니다.

    다음은 몇 가지 옵션입니다.

    option 1 .
    

    rm 명령으로 로컬 시스템의 파일을 제거하십시오.

    copyToLocal / get을 사용하십시오.

    option 2
    

    또는 로컬 파일의 이름을 새 이름으로 변경하여 클러스터에서와 같은 이름의 파일을 가질 수 있습니다. 그것을 위해 mv 명령을 사용하십시오.

    get / copyTolocal 명령을 사용하십시오.

    option 3
    

    클러스터 자체에서 파일 이름을 바꾸고 copytolocal을 사용하십시오

    hadoop fs -mv [oldpath] [newpath]
    hadoop fs -copytolocal [newpath] .
    
  6. ==============================

    6.distdcp를 -update로 시도 할 수 있습니다. 주요 장점은 파일에 변경이있을 때만 대상을 업데이트한다는 것입니다.

    distdcp를 -update로 시도 할 수 있습니다. 주요 장점은 파일에 변경이있을 때만 대상을 업데이트한다는 것입니다.

    hadoop distcp -update file : // 소스 hdfs : // namode / target

    hadoop distcp -update  file:///home/hduser/pigSample/labfiles/SampleData/books.csv  hdfs://10.184.37.158:9000/yesB
    
  7. ==============================

    7.당신은 이것을 시도 할 수 있습니다 :

    당신은 이것을 시도 할 수 있습니다 :

    bin/hadoop fs -rm /path_of_the_file | grep "0" | bin/hadoop fs -put ~/input_path /output_path
    
  8. ==============================

    8.-f가 나에게 도움이된다.

    -f가 나에게 도움이된다.

  9. from https://stackoverflow.com/questions/16437548/how-to-overwrite-the-existing-files-using-hadoop-fs-copytolocal-command by cc-by-sa and MIT license