Spark-Version 2.1Funke: Explode ein Paar von verschachtelten Spalten
ich eine Datei in Funken dataframe
mit folgendem Format zu lesen:
{
"field1": "value1",
"field2": "value2",
"elements": [{
"id": "1",
"name": "a"
},
{
"id": "2",
"name": "b"
},
{
"id": "3",
"name": "c"
}]
}
Es enthält eine array
von verschachtelten Elementen, jetzt will ich explode
das elements
Array, um die flache JSON-Struktur zu erhalten. Ich verwende den folgenden Code:
var dfExploded = df
.withColumn("id",
explode(df.col("elements.id")))
.withColumn("name",
explode(df.col("elements.name")));
Es scheint kartesisches Produkt zurückkehrt (zum Beispiel ich bin 9 Elemente im Ergebnis zu erzielen, während ich nur 3 will). Gibt es eine Möglichkeit, ein Paar verschachtelte Spalten explode
Funktion zu spezifizieren?
vielleicht drehen Id + Namen glätten? –