将嵌套的火花行转换为嵌套的地图Map [String,Any](反之亦然)

时间:2019-01-11 10:44:00

标签: scala apache-spark apache-spark-sql

想要的功能

row被假定为嵌套结构。输出映射键应该是字段键(/列名)的完整路径。例如。如果输入结构为{foo: { bar: 1}, bob: "alice"},则输出映射应为Map("foo" -> Map("foo.bar" -> 1))

def rowToMap(row: Row): Map[String, Any]

希望有一种整齐的方法可以做到这一点,如果可能的话,可能必须在row.schema上使用递归。

类似地给出了一个嵌套地图,例如Map("foo" -> Map("bar" -> 1), "bob" -> "alice")(请注意,我们不需要解析完整路径)。

def mapToRow(map: Map[String, Any]): Row

1 个答案:

答案 0 :(得分:0)

¯\_(ツ)_/¯