我想在不将结果写入文件的情况下执行我的Flink
Scala
程序。在不将结果DataSet
保存到DataSink
中的情况下运行程序是不可能的。所以我尝试了<result dataset name>.writeAsText("file:///dev/null", WriteMode.OVERWRITE)
。那没用。出现以下错误:
> java.io.IOException: Output path 'file:/dev/null' could not be
> initialized. Canceling task... at
> org.apache.flink.api.common.io.FileOutputFormat.open(FileOutputFormat.java:228)
> at
> org.apache.flink.api.java.io.TextOutputFormat.open(TextOutputFormat.java:77)
> at
> org.apache.flink.runtime.operators.DataSinkTask.invoke(DataSinkTask.java:187)
> at org.apache.flink.runtime.taskmanager.Task.run(Task.java:584) at
> java.lang.Thread.run(Thread.java:745)
有没有一种方法可以使用带有dev/null路径的DataLink?
您可以使用DiscardingOutputFormat
:
val data: DataSet[(String, Int)]
data.output(new DiscardingOutputFormat[(String, Int)]())