2016-09-21 2 views
0

Linuxサーバーでspark 2.0とzeppelin-0.6.1-bin-allを実行しています。デフォルトのスパークノートはうまく動作しますが、sqlContextを使ってpysparkで新しいノートブックを作成して実行しようとすると、「py4j.Py4JException:Method createDataFrame([class java.util.ArrayList、class java.util.ArrayList、ヌル])が存在しない "私は単純なコード、Zeppelin 0.6.1のSpark 2.0 - SQLContextが利用できません

%pyspark 

wordsDF = sqlContext.createDataFrame([('cat',), ('elephant',), ('rat',), ('rat',), ('cat',)], ['word']) 
wordsDF.show() 
print type(wordsDF) 
wordsDF.printSchema() 

を実行しようとした

を私はエラーを取得し、

トレースバック(最新の呼び出しの最後): ファイル" を/ tmp/zeppelin_pyspark- 7635635698598314374.py "、行266、 raise例外(traceback.format_exc()) Excepション:トレースバック(最新の呼び出しの最後): のexec(コード)で ファイル "/tmp/zeppelin_pyspark-7635635698598314374.py"、ライン259、 ファイル ""、1行目、 ファイル内の「/spark/spark-2.0 .0-bin-hadoop2.7/python/pyspark/sql/context.py "、299行目、createDataFrame内 return self.sparkSession.createDataFrame(data、schema、samplingRatio) ファイル" /spark/spark-2.0.0 -bin-hadoop2.7/python/lib/py4j-0.10.1-src.zip/py4j/java_gateway.py "、933行目、 答え、self.gateway_client、self.target_id、self.name) ファイル "/spark/spark-2.0.0-bin-hadoop2.7/python/pyspark/sql/utils.py"、63行目、デコ return f(* a、** kw) ファイル "/ spark /spark-2.0.0-bin-hadoop2 (target_id、 "。"、name、value) Py4JError:エラーが発生しました。 o48.createDataFrameを呼び出します。トレース: py4j.Py4JException:メソッドcreateDataFrame([クラスjava.util.ArrayList、クラスjava.util.ArrayList、null])が存在しませんでpy4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:318) でpy4j .reflection.ReflectionEngine.getMethod py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:128)でpy4j.Gateway.invoke(Gateway.java:272)で(ReflectionEngine.java:326) py4j.commands.CallCommandで.execute py4j.GatewayConnection.runで(CallCommand.java:79) java.lang.Thread.runで(GatewayConnection.java:211) (Thread.java:745)

私は同じコードを試してみてください"sqlContext = SQLContext(sc)"これはjusで動作します罰金です。

インタプリタ "zeppelin.spark.useHiveContext false"設定を試しましたが、動作しませんでした。

これは簡単な操作なので、明らかに何かが不足しているはずです。設定するその他の設定や欠落しているものがある場合は、アドバイスをお願いします。

Zeppelin 0.6.0で同じコードをテストしたところ、正常に動作しています。

答えて

0

SparkSessionは、Zeppelin 0.6.1のspark(Sparkシェルと同様)にマップされるSpark 2.0.0のデフォルトエントリポイントです。 spark.createDataFrame(...)を試しましたか?

関連する問題