在使用Spark 计算HDFS数据时会遇到整个文件夹文件读取,删除输出路径的需求,特此记录一次
递归读取文件:
sc
.hadoopConfiguration
.setBoolean("mapreduce.input.fileinputformat.input.dir.recursive", true)
删除已存在的路径:
def deleteOutPutPath(sc: SparkContext,outputPath: String):Unit={
val path = new Path(outputPath)
val hadoopConf = sc.hadoopConfiguration
val hdfs = org.apache.hadoop.fs.FileSystem.get(hadoopConf)
if(hdfs.exists(path)){
hdfs.delete(path,true)
}
}