0

Ich habe versucht, ein Dataframe-Objekt auf einer hdfs-Datei mit Funken csv lib wie gezeigt in this tutorial zu erstellen.DataFrame-Objekt zeigt keine Daten an

Aber als ich versuchte, die Anzahl der Datenrahmen-Objekt zu erhalten, es zeigt als 0

Hier ist meine Datei Blick ist wie,

employee.csv:

empid,empname 
1000,Tom 
2000,Jerry 

ich die geladen über Datei,

val empDf = sqlContext.read.format("com.databricks.spark.csv").option("header","true").option("delimiter",",").load("hdfs:///user/.../employee.csv"); 

Wenn ich abgefragt wie, empDf object.printSchema() schenkt richtiges Schema mit empid, empname als String-Felder und ich konnte sehen, dass das Trennzeichen richtig gelesen wurde.

Aber wenn ich versuchte, den Datenrahmen mit, empDf.show geben nur Spaltenüberschrift und keine Daten in es und wenn ich empDf.count gebe 0 Datensätze.

Bitte korrigieren Sie mich, wenn ich etwas zu tun verpasst habe, was hier sehr nötig ist.

Antwort

0

Stellen Sie sicher, dass die Version spark-csv und die Scala-Version, mit der Ihre Spark-Distribution erstellt wird, identisch sind.

Zum Beispiel, wenn Ihr Spark-Distro mit Scala 2.10 (der Standard Scala Version für Databricks prebuilt Spark-Distros) gebaut wird, werden Sie spark-csv_2.10 benötigen - Version spark-csv_2.11 (in der genannten Tutorial gezeigt) wird nicht funktionieren, und wird ein Rück leerer Datenrahmen mit nur Spaltennamen - siehe my answer to this SO question für einen ähnlichen Fall.

+1

Vielen Dank. Es ist mein Problem gelöst ... !! Meine Scala-Version ist 2.10, aber ich habe 2.11-Version von Spark csv Problem. Mit 2.10 Funken csv-Bibliothek hat es gelöst ...! –

+0

Sie sind herzlich willkommen – desertnaut