首页 > 解决方案 > spark_write_json() 输出等效于 spark_write()

问题描述

我正在使用以下代码以 json 格式输出数据(请参阅示例输出)。spark_write() 函数似乎使用了 spark_apply(),我不能在我的特定环境中使用它。

writer <- function(df, path) {
  jsonlite::write_json(x = df, path)
}
sparklyr::spark_write(
  sdf,
  writer,
  paths = list("s3://bucket/output.json"))

输出:[{"title":"TITLE 1","text":"text 123"},{"title":"TITLE 2","text":"TEXT 456."}]

是否可以修改 spark_write_json() 中的选项以获得与上述等效的输出?使用默认设置,记录用“\n”而不是“,”分隔,并且省略了开始和结束括号。

spark_write_json(
  sdf,
  path = "s3://bucket",
  options = list(),
  mode = 'overwrite')

输出:

{“标题”:“标题 1”,“文本”:“文本 123”}

{"title":"TITLE 2","text":"TEXT 456."}

我需要使用 spark 函数,而不是收集我的数据,因为它非常大。

标签: rjsonsparklyr

解决方案


推荐阅读