将数据集的内容写入JSON字符串

问题描述 投票:2回答:1

我们可以将dataset的内容写入Json文件:

DataSet<...> dataset = ...
dataset.write().json("myFile");

假设数据集足够小,是否有办法将内容直接写入StringStream或任何种类的OutputStream

可以将数据集写入临时文件夹,然后再次读取数据:

Path tempDir = Files.createTempDirectory("tempfiles");
String tempFile = tempDir.toString() + "/json";
dataset.coalesce(1).write().json(tempFile);        
Path jsonFile = Files.find(Paths.get(tempFile), 1, (path, basicFileAttributes) -> {
    return Files.isRegularFile(path) && path.toString().endsWith("json");
}).findFirst().get();
BufferedReader reader = Files.newBufferedReader(jsonFile);
reader.lines().forEach(System.out::println);

但是在不使用中间文件的间接寻址的情况下,有没有更好的方法来达到相同的结果?]

我们可以将数据集的内容写入Json文件:DataSet <...>dataset = ... dataset.write()。json(“ myFile”);假设数据集足够小,有没有办法写内容...

java apache-spark
1个回答
0
投票

您只需映射数据即可将数据集[A]转换为数据集[String]。

© www.soinside.com 2019 - 2024. All rights reserved.