我在我的 zeppelin notebook 中写了这个简单的代码
import org.apache.spark.sql.SQLContext
val sqlConext = new SQLContext(sc)
val df = sqlContext.read.format("csv").option("header", "true").load("hdfs:///user/admin/foo/2018.csv")
df.printSchema()
早些时候它无法找到 spark-csv。所以我将它添加为 spark1 和 spark2 解释器的依赖项。但是当我运行这段代码时,我收到一个错误
java.lang.NullPointerException
at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:38)
at org.apache.zeppelin.spark.Utils.invokeMethod(Utils.java:33)
at org.apache.zeppelin.spark.SparkInterpreter.open(SparkInterpreter.java:614)
at org.apache.zeppelin.interpreter.LazyOpenInterpreter.open(LazyOpenInterpreter.java:69)
at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:493)
at org.apache.zeppelin.scheduler.Job.run(Job.java:175)
at org.apache.zeppelin.scheduler.FIFOScheduler$1.run(FIFOScheduler.java:139)
这个文件只有 300 行。所以我认为它不会导致任何内存问题。我有一个 4 节点集群,那么如何确定可能存在更详细错误的日志文件在哪里?
好的。我解决了。Zeppelin 似乎使用 Scala 2.10 我已经为 2.11 版添加了 Scala csv 的依赖项,这导致了空指针错误。
我去将我的依赖项更改为 2.10 并重新启动解释器,现在它工作正常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句