2017-03-20 12 views
2

Anaconda Jupyterノートブックに関連するヘルプを探したいと思います。私はPyuparkとSparkRをJupyterのノートブックに書きたいと思っています。私はJupyterのノートブックと一緒にApache Toreeをインストールする方法を教えるオンラインチュートリアルに従いました。Apache Toree with Anaconda Jupyter Notebook

私はKerouized Hadoopクラスタを管理するためにCloudera Managerパーセルを使用しています。

しかし、私はApache Toree PySparkのカーネルをサーバログに以下のエラーでオープンできません。

[I 15:24:50.529 NotebookApp] Creating new notebook in 
[I 15:24:52.079 NotebookApp] Kernel started: 8cb4838c-2171-4672-96a4-b21ef191ffc6 
Starting Spark Kernel with SPARK_HOME=/opt/cloudera/parcels/CDH/lib/spark 
WARNING: User-defined SPARK_HOME (/opt/cloudera/parcels/CDH-5.9.0-1.cdh5.9.0.p2024.2115/lib/spark) overrides detected (/opt/cloudera/parcels/CDH/lib/spark). 
WARNING: Running spark-class from user-defined location. 
Exception in thread "main" java.lang.NoSuchMethodError: joptsimple.OptionParser.acceptsAll(Ljava/util/Collection;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder; 
    at org.apache.toree.boot.CommandLineOptions.<init>(CommandLineOptions.scala:37) 
    at org.apache.toree.Main$delayedInit$body.apply(Main.scala:25) 
    at scala.Function0$class.apply$mcV$sp(Function0.scala:40) 
    at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12) 
    at scala.App$$anonfun$main$1.apply(App.scala:71) 
    at scala.App$$anonfun$main$1.apply(App.scala:71) 
    at scala.collection.immutable.List.foreach(List.scala:318) 
    at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:32) 
    at scala.App$class.main(App.scala:71) 
    at org.apache.toree.Main$.main(Main.scala:24) 
    at org.apache.toree.Main.main(Main.scala) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731) 
    at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181) 
    at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206) 
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121) 
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 

私はjoep-simple-4.5.jarをToreeのlibとSparkホームに入れました。新しいノートブックを作成しようとするときにそれを見つけることができるように私はそこに瓶を置く必要がある場所はありますか?ありがとう。私が見つけた

敬具、 ルカ

+0

私はこの同じ問題を持っている:

P. S.はここでCDH 5.10.0との互換性があるToreeバージョンです。 https://issues.apache.org/jira/browse/TOREE-324というリンクは、jopt-simple 4.9で再コンパイルすると言います。私はこの変更を加えて再コンパイルしましたが、配備するためにITを活用する必要があるため、問題を解決するとは言えません。このトピックのhttps://gitter.im/apache/toreeには、現在の会話があります。調整してください。 – codeaperature

答えて

2

最も単純ソリューションが提出スパークするには、次のオプションを追加することです:

--conf "spark.driver.extraClassPath=/usr/local/share/jupyter/kernels/apache_toree_scala/lib/toree-assembly-0.1.0-incubating.jar" --conf "spark.executor.extraClassPath=/usr/local/share/jupyter/kernels/apache_toree_scala/lib/toree-assembly-0.1.0-incubating.jar" 

これはどちらか/usr/local/share/jupyter/kernels/apache_toree_scala/kernel.jsonファイルの__TOREE_SPARK_OPTS__変数に追加することができますかファイル/usr/local/share/jupyter/kernels/apache_toree_scala/bin/run.shのbashコマンドに直接渡します。

これを追加すると、デフォルトのCDHライブラリではなくToree JARからjoptsimple.OptionParserをロードするようにクラスローダーを強制します。 https://github.com/Myllyenko/incubator-toree/releases

+0

あなたの解決策は理にかなっています...私はこのアドバイスを試すためにconfigsを手伝っています...私は何かが欠けています。このconf行をApache Toreeのconfigsに追加したか、bash spark-submitファイルを編集しましたか?あなたはいくつかの詳細を提供するほど親切ですか?あなたはToreeと一緒に働いているCDH(私のためには5.9.2)を得るために何か注目すべきことをしましたか? – codeaperature

+1

答えを更新しましたが、CDH 5.9.2で動作するかどうかはわかりません。 この回答を投稿した瞬間、私はCDH 5.10.0でToreeを立ち上げる方法を探していました。その後、Apache SparkとCloudera Sparkライブラリのバイナリの互換性がないために問題が発生し、最終的にデフォルトのToreeアセンブリを使用しようとしました。 Toree Gitterについて私はSparkライブラリに対してToreeを再コンパイルするアドバイスを受けました。もし私がこれで成功すれば私はあなたに知らせるでしょう。 –

+0

CDHビルド/ブランチが可能な方法だと思われます。私は同じことをやっているし、Gitterのチャットの中で協力している。 CDHのjarファイルはリポジトリの 'repo1.maven.org'にないかもしれません、Toreeは' DependencyDownloader'で宣言します。私はレポを閲覧したが、それは持っていないようだ。 – codeaperature

関連する問題