Ich verwende Zeppelin-Sandbox 0.5.6
mit Spark 1.6.1
auf Amazon EMR
. Ich lese csv
Datei befindet sich auf s3
. Das Problem ist, dass manchmal Ich bekomme Fehler beim Lesen der Datei. Ich muss den Interpreter mehrere Male neu starten, bis es funktioniert. Nichts in meinem Code ändert sich. Ich kann es nicht wiederherstellen und kann nicht sagen, wann es passiert.Apache Zeppelin schlägt beim Lesen csv mit pyspark
Mein Code geht wie folgt vor:
definieren Abhängigkeiten:
%dep
z.reset()
z.addRepo("Spark Packages Repo").url("http://dl.bintray.com/spark-packages/maven")
z.load("com.databricks:spark-csv_2.10:1.4.0")
mit spark-csv
:
%pyspark
import pyspark.sql.functions as func
df = sqlc.read.format("com.databricks.spark.csv").option("header", "true").load("s3://some_location/some_csv.csv")
Fehler msg:
Py4JJavaError: An error occurred while calling o61.load. :
org.apache.spark.SparkException: Job aborted due to stage failure:
Task 0 in stage 0.0 failed 4 times, most recent failure: Lost task 0.3
in stage 0.0 (TID 3, ip-172-22-2-187.ec2.internal):
java.io.InvalidClassException: com.databricks.spark.csv.CsvRelation;
local class incompatible: stream classdesc serialVersionUID =
2004612352657595167, local class serialVersionUID =
6879416841002809418
...
Caused by: java.io.InvalidClassException:
com.databricks.spark.csv.CsvRelation; local class incompatible
Sobald ich bin Lesen Sie die csv
in die dataframe
, der Rest des Codes funktioniert gut.
Irgendwelche Ratschläge?
Danke!