Comment convertir DataFrame en Json?
J'ai un énorme fichier Json, une petite partie d'elle, comme suit:
{
"socialNews": [{
"adminTagIds": "",
"fileIds": "",
"departmentTagIds": "",
........
........
"comments": [{
"commentId": "",
"newsId": "",
"entityId": "",
....
....
}]
}]
.....
}
J'ai appliqué vue latérale exlode sur socialNews comme suit:
val rdd = sqlContext.jsonFile("file:///home/ashish/test")
rdd.registerTempTable("social")
val result = sqlContext.sql("select * from social LATERAL VIEW explode(socialNews) social AS comment")
Maintenant, je veux revenir à ce résultat (DataFrame) en json et l'enregistrer dans un fichier, mais je ne suis pas en mesure de trouver tout scala api pour effectuer la conversion.
Est-il de la bibliothèque standard pour ce faire, ou une certaine façon de la comprendre?
source d'informationauteur ashish.garg
Vous devez vous connecter pour publier un commentaire.
La méthode
write
est dans la classe DataFrameWriter et devraient être accessibles à vous surDataFrame
objets. Assurez-vous que votre ca est de typeDataFrame
et pas de déprécié typeSchemaRdd
. Vous pouvez prévoir explicitement la définition de type deval data: DataFrame
ou en fonte à dataFrame avectoDF()
.Si vous avez un DataFrame il existe une API pour revenir à un EDR[String] qui contient le json enregistrements.
Il devrait être disponible à partir de l'Étincelle de 1,4 à partir. Appel de l'API sur le résultat DataFrame vous avez créé.
Les Api disponibles sont répertoriés ici
Si vous ne pouvez toujours pas trouver un moyen de convertir Dataframe en JSON, vous pouvez utiliser to_json ou la méthode toJSON intégré Étincelle fonctions.
Laissez-moi savoir si vous avez un échantillon Dataframe et un format JSON pour convertir.