2016-12-23 4 views
0

Ich hatte eine Anforderung, wo ich innerhalb von Spark RDD durchgeführt wurde. Jetzt möchte ich die neuen Daten speichern, die in foreachPartition Schleife generiert wurden. Aber ich glaube, dass die Option save nur mit RDD (oder Dataframe) verfügbar ist. Gibt es eine Möglichkeit, neue Daten zu speichern, die innerhalb foreachPartition Schleife generiert wurde. Mein Code sieht folows:Speichern Sie die Daten im Inneren von Funken geändert rdd.foreachPatition

lines.foreachRDD{ 
rdd => 

val newRDD => rdd.map(...) 

newRDD.foreachParition(iter => 
val newValues = iter.map(...) 

//I want to save newValues 
) 

} 

Dank

Antwort

0

Nur mapPartitions verwenden und speichern, um später:

newRDD.mapParitions(iter => 
    iter.map(...) 
).saveAsTextFile(...) 
Verwandte Themen