爆炸包含JSON的Spark Dataframe列

时间:2016-04-13 18:37:59

标签: java apache-spark apache-spark-sql spark-dataframe

我在数据框中有一个包含JSON对象的列。对于我的数据框中的每一行,我想提取JSON,解析它并拉出某些字段。提取后,我想将字段作为新的列元素追加到行中。

我查看了DataFrame上可用的explode()方法以及foreach()flatMap()map(),但无法辨别哪个方法更合适对于这种类型的处理。

1 个答案:

答案 0 :(得分:0)

地图可能就是您所需要的。使用此方法,您可以解析json,选择所需的字段,然后返回包含这些附加列的新行。

通常,map用于1:1的用户定义函数(例如,每个输入行有1个输出行)。 Flatmap用于1:n的用户定义函数(其中每行可以返回任意数量的行)