您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Spark 2 Scala中将Row转换为json

如何在Spark 2 Scala中将Row转换为json

我需要阅读json输入并产生json输出。大多数字段是单独处理的,但是只需保留几个json子对象。

当Spark读取数据帧时,它将记录转换为行。行是一个类似于json的结构。可以将其转换并写到json中。

但是我需要将一些子json结构分解为字符串以用作新字段。

可以这样完成:

dataFrameWithJsonField = dataFrame.withColumn("address_json", to_json($"location.address"))

location.address是传入的基于json的数据框的子json对象的路径。address_json是该对象的列名,该列名转换为json的字符串版本。

to_json 在Spark 2.1中实现。

如果使用json4s生成输出json,则应将address_json解析为AST表示,否则输出json将转义address_json部分。

其他 2022/1/1 18:19:02 有678人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶