1

我想在输出文件夹中写入数据,而不需要标准格式的 spark:

在此处输入图像描述

有什么方法可以输出只有特定文件名和扩展名(json)的数据吗?

提前感谢您的帮助!

4

1 回答 1

0

不,没有。Spark 的预期用例不是将所有内容都放在一个分区然后写入。为了保持一致的行为,写入数据集时忽略 DataFrame 的分区数,始终创建一个文件夹,该文件夹中的每个文件都与正在处理的分区相关。

但是,如果您知道驱动程序可以保存分区,那么您可以使用标准 Python 功能:

import json
data = [row.asDict() for row in dataframe.collect()]
with open("name_of_file.json", "w") as fh:
    json.dump(obj=data, fp=fh)

请注意,在这种情况下,虽然您不会获得 JSONlines 格式,但也有一些解决方法。

于 2019-12-09T20:16:42.937 回答