如何在使用scala读取文件后删除hdfs目录中的文件

我使用fileStream从Spark(流式上下文)中读取hdfs目录中的文件.如果我的Spark关闭并在一段时间后启动,我想读取目录中的新文件.我不想读取已经由Spark读取和处理的目录中的旧文件.我试图在这里避免重复.

val lines = ssc.fileStream[LongWritable,Text,TextInputFormat]("/home/File")

任何代码片段都有帮助吗?

解决方法

您可以使用FileSystem API.以下是命令.

import org.apache.hadoop.fs.FileSystem
import org.apache.hadoop.fs.Path
val fs=FileSystem.get(sc.hadoopConfiguration)
val outPutPath="/abc"
if(fs.exists(new Path(outPutPath)))
  fs.delete(new Path(outPutPath),true)

相关文章

共收录Twitter的14款开源软件,第1页Twitter的Emoji表情 Tw...
Java和Scala中关于==的区别Java:==比较两个变量本身的值,即...
本篇内容主要讲解“Scala怎么使用”,感兴趣的朋友不妨来看看...
这篇文章主要介绍“Scala是一种什么语言”,在日常操作中,相...
这篇文章主要介绍“Scala Trait怎么使用”,在日常操作中,相...
这篇文章主要介绍“Scala类型检查与模式匹配怎么使用”,在日...