【发布时间】:2019-04-22 09:32:27
【问题描述】:
我要么不知道我在寻找什么,要么缺少文档。鉴于此,后者似乎是这种情况:
"options - 用于控制结构列如何转换为 json 字符串的选项。接受相同的选项和 json 数据源。"
太棒了!那么,我有哪些选择?
我正在做这样的事情:
Dataset<Row> formattedReader = reader
.withColumn("id", lit(id))
.withColumn("timestamp", lit(timestamp))
.withColumn("data", to_json(struct("record_count")));
...我得到了这个结果:
{
"id": "ABC123",
"timestamp": "2018-11-16 20:40:26.108",
"data": "{\"record_count\": 989}"
}
我想要这个(从“数据”中删除反斜杠和引号):
{
"id": "ABC123",
"timestamp": "2018-11-16 20:40:26.108",
"data": {"record_count": 989}
}
这是偶然的选择之一吗?有没有更好的 Spark 指南?关于 Spark 最令人沮丧的部分不是让它做我想做的事,而是缺乏关于它可以做什么的好的信息。
【问题讨论】:
-
你应该先parse JSON 字符串,然后才应用
to_json。
标签: java json apache-spark dataframe apache-spark-sql