如何在使用Scala读取HDFS目录后删除该目录中的文件? [英] How do I delete files in hdfs directory after reading it using scala?
本文介绍了如何在使用Scala读取HDFS目录后删除该目录中的文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用fileStream从Spark(流上下文)读取HDFS目录中的文件。如果我的Spark在一段时间后关闭并启动,我希望读取目录中的新文件。我不想读取Spark已经读取和处理过的目录中的旧文件。我在此尽量避免重复。
val lines = ssc.fileStream[LongWritable, Text, TextInputFormat]("/home/File")
是否有需要帮助的代码段?
推荐答案
可以使用FileSystem
接口:
import org.apache.hadoop.fs.{FileSystem, Path}
val fs = FileSystem.get(sc.hadoopConfiguration)
val outPutPath = new Path("/abc")
if (fs.exists(outPutPath))
fs.delete(outPutPath, true)
这篇关于如何在使用Scala读取HDFS目录后删除该目录中的文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文