我有一个json,看起来像这样:
"mapping_field" : {
"values" : {
"key1" : {
"id" : "key1",
"field1" : "value1",
"field2" : "value2",
},
"key2" : {
"id" : "key2",
"field1" : "value3",
"field2" : "value4",
}
},
"keys" : [
"key1",
"key2"
]
}
我正在尝试将这个结构Map到spark模式。我已经创建了以下内容:;但是它不起作用。我也试过移除 ArrayType
在值字段Map中。
StructType("mapping_field",
MapType(
StructField("keys", ArrayType(StringType())),
StructField("values", ArrayType(StructType([
StructField("id",StringType()),
StructField("field1",StringType()),
StructField("field2",StringType())
])))
)
)
另外,请注意,“key1”和“key2”是动态字段,将使用唯一标识符生成。也可以有两个以上的键。有人能把arraytypeMap到structtype吗?
1条答案
按热度按时间gab6jxml1#
提供的json的结构类型: