hadoop - 从 Hadoop 中删除文件/文件夹

标签 hadoop amazon-web-services amazon-s3 elastic-map-reduce

我在分析日志文件的数据管道内运行 EMR 事件,当我的管道失败时出现以下错误:

Exception in thread "main" org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://10.208.42.127:9000/home/hadoop/temp-output-s3copy already exists
    at org.apache.hadoop.mapred.FileOutputFormat.checkOutputSpecs(FileOutputFormat.java:121)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:944)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:905)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:396)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1132)
    at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:905)
    at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:879)
    at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1316)
    at com.valtira.datapipeline.stream.CloudFrontStreamLogProcessors.main(CloudFrontStreamLogProcessors.java:216)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:187)

如何从 Hadoop 中删除该文件夹?

最佳答案

当您说从 Hadoop 中删除时,您实际上是指从 HDFS 中删除。

要从 HDFS 中删除某些内容,请执行以下两者之一

从命令行:

  • 弃用方式:

hadoop dfs -rmr hdfs://path/to/file

  • 新方法(使用 hadoop 2.4.1):

hdfs dfs -rm -r hdfs://path/to/file

或者来自java:

FileSystem fs = FileSystem.get(getConf());
fs.delete(new Path("path/to/file"), true); // delete file, true for recursive 

关于hadoop - 从 Hadoop 中删除文件/文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16797358/

相关文章:

php - hadoop流无效的DFS目录名称

linux - 如何让root用户向HDFS写入文件

windows - 在 Windows (Cygwin) 上安装 Hive (Hadoop)

scala - 在 emr 5.29.0 上运行 Scala 2.12

amazon-web-services - 如何在有指标数据之前创建 cloudwatch 警报?

hadoop - 使用Pig存储在Hbase中时出错

amazon-web-services - 如何在 SAM 模板中设置 AWS 堆栈名称(针对 Lambda 层)?

amazon-s3 - S3 使用预签名 URL 上传和服务图像

python - boto3 s3 客户端复制函数中可能的 ExtraArgs 值

angularjs - Cordova 文件传输 : upload image to AWS s3