Предположим, у меня есть массив внутри JSON, и я пытаюсь сгладить его и сохранить в базе данных. как можно дублировать данные, то есть преобразовать их в несколько строк для каждого элемента в массиве? как пример, приведенный ниже. если я не знаю, какую структуру я получаю в JSON. Как я могу достичь этого. Я нашел пример на stackoverflow, но это помогает, если вы знаете структуру. как можно этого достичь, не зная структуры?
Уплощение JSON в табличную структуру с использованием только функции Spark-Scala RDD
{ "level":{"productReference":{
"prodID":"1234",
"unitOfMeasure":"EA"
},
"states":[
{
"state":"SELL",
"effectiveDateTime":"2015-10-09T00:55:23.6345Z",
"stockQuantity":{
"quantity":1400.0,
"stockKeepingLevel":"A"
}
},
{
"state":"HELD",
"effectiveDateTime":"2015-10-09T00:55:23.6345Z",
"stockQuantity":{
"quantity":800.0,
"stockKeepingLevel":"B"
}
}
] }}
+------+-------------+-----+-------------------------+--------+-----------------+
|prodID|unitOfMeasure|state|effectiveDateTime |quantity|stockKeepingLevel|
+------+-------------+-----+-------------------------+--------+-----------------+
|1234 |EA |SELL |2015-10-09T00:55:23.6345Z|1400.0 |A |
|1234 |EA |HELD |2015-10-09T00:55:23.6345Z|800.0 |B |
+------+-------------+-----+-------------------------+--------+-----------------+