HDFS上的文件用于初始化Flink作业中的对象

时间:2015-08-29 00:11:50

标签: java hadoop hdfs apache-flink

我对Flink有这个奇怪的问题:在一项工作中我必须使用预编译的资源文件初始化一个对象。在工作开始后,它第一次运行没有问题。但是,当我第一次使用Web界面再次访问它时,我的对象无法初始化,错误是:

  

java.nio.file.NoSuchFileException:hdfs:/.../.../ my_file

这让我感到困惑,因为文件在那里并且第一次成功初始化了对象。相关代码是:

Config.load(Files.newBufferedReader(
    Paths.get("hdfs:///xx/xx/myconfig.cfg"),
    StandardCharsets.UTF_8));

如果资源在本地系统上并且我运行具有相同作业的本地服务器,那么我不会遇到任何问题。那么有人有任何线索吗?

编辑:完整跟踪

Caused by: java.nio.file.NoSuchFileException: hdfs:/path/to/xx.cfg
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:361)
at java.nio.file.Files.newByteChannel(Files.java:407)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
at java.nio.file.Files.newInputStream(Files.java:152)
at java.nio.file.Files.newBufferedReader(Files.java:2784)
at myObject(myObject.java:364)
at myclass$mymethod.map(myclass.java:126)
at myclass$mymethod.map(myclass.java:1)
at org.apache.flink.streaming.api.operators.StreamMap.processElement(StreamMap.java:35)
at org.apache.flink.streaming.runtime.tasks.OutputHandler$CopyingOperatorCollector.collect(OutputHandler.java:272)
... 7 more

0 个答案:

没有答案