SparkでのIPython / Jupyterの問題(認識されないエイリアス)


11

いくつかのハードウェアでクラスタを構築するために出費する前に、Sparkを試すためのVMセットの設定に取り組んでいます。簡単な説明:私は応用機械学習のバックグラウンドを持つ学者であり、データサイエンスでは仕事がやや終了しました。私はコンピューティングにツールを使用していますが、それらを設定する必要はほとんどありません。

3つのVM(1つのマスター、2つのスレーブ)を作成し、Sparkを正常にインストールしました。すべてが正常に機能しているようです。私の問題は、クラスター上のマシンで実行されていないブラウザーから接続できるJupyterサーバーを作成することです。

Jupyter Notebookを正常にインストールしました...実行されます。Sparkでリモートサーバーに接続する新しいIPythonプロファイルを追加しました。

今問題

コマンド

$ ipython --profile=pyspark 正常に動作し、スパーククラスターに接続します。しかしながら、

$ ipython notebook --profile=pyspark [<stuff is here>] Unrecognized alias: "profile=pyspark", it will probably have no effect. デフォルトでは、defaultプロファイルではなくpysparkプロファイルになります。

私のノートブック構成pysparkは:

c = get_config() c.NotebookApp.ip = '*' c.NotebookApp.open_browser = False c.NotebookApp.port = 8880 c.NotebookApp.server_extensions.append('ipyparallel.nbextension') c.NotebookApp.password = u'some password is here'


以下はうまくいくでしょうか?$ ipython --profile=pyspark notebook?問題は引数の順序だけにあるのかもしれません。
ガーボルBakos

回答:


12

IPythonはバージョン4.0に移動しました。つまり、IPythonを使用している場合、構成はから~/.jupyterではなく、から読み込まれます~/.ipython。新しい設定ファイルを作成する必要があります

jupyter notebook --generate-config

その後~/.jupyter/jupyter_notebook_config.py、必要に応じて結果のファイルを編集します。

その他のインストール手順はこちら


私はよく彼らがなぜipythonからjupyterを分割する際にipython notebookコマンドを保持するのか疑問に思っていました。これが、本当に混乱する理由です。プロファイルの不一致を指摘してくれたkau zshに感謝します。ipython notebookコマンドを使用する場合はipythonプロファイルを使用し、そのコマンドを使用する場合はjupyter-notebookプロファイルを使用する必要があるようです。
AN6U5 2016年

4

構成ファイルが〜/ .ipython / profile_pyspark / ipython_notebook_config.pyであると想定しますが、この構成ファイルは次のように使用できます。

ipython notebook --config='~/.ipython/profile_pyspark/ipython_notebook_config.py'

または

jupyter-notebook --config='~/.ipython/profile_pyspark/ipython_notebook_config.py'

1

問題は、pysparkがデフォルトでos sysパス上にないことです。構成ファイル/パス/ etcに手動で追加する試みが何度か失敗した後、findsparkというこのGitHubリポジトリに遭遇しました。

https://github.com/minrk/findspark

私はgit clone https://github.com/minrk/findspark.gitを使用してこのリポジトリのクローンを作成しました

次に、findsparkルートから「pip install findspark」を実行しました。

Jupyterノートブックを開始し、新しいPython3ノートブックを作成して追加しました

import findspark
import os
findspark.init()
import pyspark
sc = pyspark.SparkContext()

findspark.init()の前に、インポートpysparkがエラーで戻ってきました。

テストするには、scと入力して取得しました:
pyspark.context.SparkContext at 0x4526d30

すべては今私のために働いています。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.