我试图监视hdfs中的存储库,以读取和处理复制到其中的文件中的数据(要将文件从本地系统复制到hdfs,我使用hdfs-put),有时它会产生问题:spark streaming:java.io.filenotfoundexception:file不存在:。复制所以我在论坛上读到了问题,这里的问题spark streaming:java.io.filenotfoundexception:file不存在:<input\u filename>。\u复制。根据我读到的问题链接到spark streaming读取文件在hdfs和github中完成复制之前:https://github.com/maji2014/spark/blob/b5af1bdc3e35c53564926dcbc5c06217884598bb/streaming/src/main/scala/org/apache/spark/streaming/dstream/fileinputdstream.scala ,他们说他们纠正了这个问题,但只是为了 FileInputDStream
我看得出来,但我用的是 textFileStream
当我尝试使用 FileInputDStream
ide抛出一个错误,因为无法从此位置访问符号。有没有人知道如何过滤出由于我尝试了以下操作而仍在复制的文件:
var lines = ssc.textFileStream(arg(0)).filter(!_.contains("_COPYING_")
但这不起作用,这是意料之中的,因为过滤器应该应用于文件进程的名称我猜我不能访问,你可以看到,我做了大量的研究,然后问问题,但没有得到幸运,任何帮助请?
1条答案
按热度按时间anhgbhbe1#
所以我看了一眼:-放错方法了。看看最后的评论:你必须使用
-rename
在shell脚本中,在hdfs上有一个原子事务。