Problema com o IPython / Jupyter no Spark (alias não reconhecido)


11

Estou trabalhando na configuração de um conjunto de VMs para experimentar o Spark antes de gastar e gastar dinheiro na construção de um cluster com algum hardware. Nota rápida: Sou um acadêmico com experiência em aprendizado de máquina aplicado e trabalho bastante em ciência de dados. Eu uso as ferramentas para computação, raramente precisaria configurá-las.

Criei 3 VMs (1 mestre, 2 escravos) e instalei o Spark com êxito. Tudo parece estar funcionando como deveria. Meu problema está na criação de um servidor Jupyter que pode ser conectado a partir de um navegador que não está sendo executado em uma máquina no cluster.

Eu instalei Jupyter notebook com sucesso ... e ele é executado. Adicionei um novo perfil IPython conectado a um servidor remoto com o Spark.

agora o problema

O comando

$ ipython --profile=pyspark funciona bem e se conecta ao cluster de faíscas. Contudo,

$ ipython notebook --profile=pyspark [<stuff is here>] Unrecognized alias: "profile=pyspark", it will probably have no effect. o padrão é o defaultperfil, não o pysparkperfil.

A configuração do meu notebook para pysparkpossui:

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'


Será que o seguinte funcionaria? $ ipython --profile=pyspark notebook? Pode ser que o problema esteja apenas na ordem dos argumentos.
Gábor Bakos

Respostas:


12

O IPython agora mudou para a versão 4.0 , o que significa que, se você o estiver usando, ele estará lendo sua configuração ~/.jupyter, não ~/.ipython. Você precisa criar um novo arquivo de configuração com

jupyter notebook --generate-config

e edite o ~/.jupyter/jupyter_notebook_config.pyarquivo resultante de acordo com suas necessidades.

Mais instruções de instalação aqui .


Eu sempre me perguntei por que eles mantiveram o comando ipython notebook ao dividir o jupyter do ipython. É exatamente por isso que fica realmente confuso. Agradecemos a você e a kau zsh por apontar a incompatibilidade de perfil. É quase como se eles usassem o perfil ipython ao usar o comando ipython notebook e o perfil jupyter-notebook ao usar esse comando.
AN6U5

4

Suponha que seu arquivo de configuração seja ~ / .ipython / profile_pyspark / ipython_notebook_config.py, você ainda pode usar esse arquivo de configuração:

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

ou

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

1

O problema é que o pyspark não está no caminho do sistema operacional por padrão. Após várias tentativas fracassadas de adicioná-lo manualmente aos meus arquivos de configuração / caminhos / etc, deparei-me com este repositório do GitHub chamado foundpark.

https://github.com/minrk/findspark

Eu clonei este repositório usando o git clone https://github.com/minrk/findspark.git

Em seguida, executei "pip install foundpark" a partir da raiz do foundpark.

Iniciou um notebook Jupyter, criou um novo notebook Python3 e adicionou

Importar Findspark
Importar
OSspark.init ()
Importar Pyspark
SC = Pyspark.SparkContext ()

Antes de foundpark.init (), o import pyspark voltava com um erro.

Para testar, digitei sc e voltei:
pyspark.context.SparkContext em 0x4526d30

Tudo trabalhando para mim agora.


Bem-vindo ao site Anahita :)
Dawny33
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.