0
的json包含结构的结构数组:(存储在minijson.json)JSON解析使用星火
{
"arr": [
{
"st1": {},
"st2": {
"a": {}
},
"val": 0.0,
"x": "1"
}
]
}
我使用的火花版本2.1.0阅读JSON。
读码:
minidf = spark.read.json("minijson.json")
minidf.printSchema()
输出:
root
|-- arr: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- val: double (nullable = true)
| | |-- x: string (nullable = true)
我不明白为什么它不能够检测st1
,st2
和a
领域中存在的JSON。
请帮忙解决这个问题。
肯定。我知道这一点。即使我尝试用空数组替换空键。 '“abc”:{}'到'“abc”:[]'它可以工作。但问题是我需要解决现有的json问题。 – desaiankitb
你总是可以自己设置模式。 –
谢谢@Assaf,但这里预定义模式的问题是,对象'st1'和'a'可以有任何级别的嵌套,我们无法控制发送者的模式。 – desaiankitb