2016-04-13 4 views
0

Ich exportiere einen Spark-Datenrahmen in Java in eine CSV-Datei. Da ich die CSV-Datei später mit Unix-Sortierwerkzeugen sortieren möchte, muss ich die Spalten neu anordnen, so dass eine Spalte zuerst steht. Nennen wir jetzt "sort_index". Wie kann ich das machen? Zur Zeit konvertiere ich unter Verwendung dieses Codes zu csv:Funken Datenframe zu CSV erste Spalte

DataFrame df = sqlContext.parquetFile(somepath); 
df.write() 
    .format("com.databricks.spark.csv") 
    .option("header", "true") 
    .save(somepath); 

Der Datenrahmen hat einige Felder in Anführungszeichen, so dass die Sortierung mit einem anderen Spaltenindex immer bricht. Deshalb brauche ich zuerst eine Spalte.

+0

Es ist besser, in Funken zu sortieren. –

+0

Das Problem ist, ich habe mehrere Parkett-Dateien und ich erstelle eine große sortierte CSV-Datei von ihnen, so dass Sortieren in Funken ist keine Option für jetzt, da ich die gesamte bestehende Datenpipeline ändern müsste. –

Antwort

0

Zur Vermeidung einer doppelten Anführungszeichen den folgenden Code verwenden: df.write() .format("com.databricks.spark.csv") .option("header", "true") .option("quoteMode,"NONE") .save(somepath);

Verwandte Themen