小编use*_*814的帖子

Spark 在 Scala 中用数组分解嵌套 JSON

假设我通过以下方式将 json 文件加载到 Spark 1.6 中

sqlContext.read.json("/hdfs/")
Run Code Online (Sandbox Code Playgroud)

它给了我一个具有以下架构的数据框:

root
 |-- id: array (nullable = true)
 |    |-- element: string (containsNull = true)
 |-- checked: array (nullable = true)
 |    |-- element: string (containsNull = true)
 |-- color: array (nullable = true)
 |    |-- element: string (containsNull = true)
 |-- type: array (nullable = true)
 |    |-- element: string (containsNull = true)
Run Code Online (Sandbox Code Playgroud)

DF 只有一行,里面有我所有项目的数组。

+--------------------+--------------------+--------------------+
|                id_e|           checked_e|             color_e|
+--------------------+--------------------+--------------------+
|[0218797c-77a6-45...|[false, true, tru...|[null, null, null...|
+--------------------+--------------------+--------------------+
Run Code Online (Sandbox Code Playgroud)

我想要一个 DF,其中数组分解为每行一项。

+--------------------+-----+-------+
|                  id|color|checked| …
Run Code Online (Sandbox Code Playgroud)

arrays json scala explode apache-spark

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

apache-spark ×1

arrays ×1

explode ×1

json ×1

scala ×1