gpt4 book ai didi

scala - 弗林克 : How to write DataSet to a variable instead of to a file

转载 作者:行者123 更新时间:2023-12-02 01:07:19 24 4
gpt4 key购买 nike

我有一个使用 DataSet API 用 scala 编写的 flink 批处理程序,它产生了我感兴趣的最终数据集。我想将该数据集作为变量或值(例如字符串列表或序列)在我的程序,而不必将其写入任何文件。可能吗?

我已经看到 flink 允许收集数据接收器以便进行调试(他们文档中的唯一示例是 Java)。但是,这只允许在本地执行,而且我不知道它在 Scala 中的等价物。我想要的是在对程序值或变量完成整个 flink 并行执行后写入最终结果数据集。

最佳答案

首先,尝试使用 Scala 版本的集合数据接收器: 导入 org.apache.flink.api.scala._ 导入 org.apache.flink.api.java.io.LocalCollectionOutputFormat;

 .
.
val env = ExecutionEnvironment.getExecutionEnvironment

// Create a DataSet from a list of elements
val words = env.fromElements("w1","w2", "w3")

var outData:java.util.List[String]= new java.util.ArrayList[String]()
words.output(new LocalCollectionOutputFormat(outData))

// execute program
env.execute("Flink Batch Scala")
println(outData)

其次,如果你的数据集适合单机内存,为什么你需要使用分布式处理框架?我认为您应该更多地考虑您的用例!并尝试使用正确的transformations在你的数据集上。

关于scala - 弗林克 : How to write DataSet to a variable instead of to a file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46971444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com