Spark의 IPython / Jupyter 관련 문제 (인식 할 수없는 별칭)


11

스파크를 실험하기 위해 VM 세트를 설정하고 나가서 하드웨어를 사용하여 클러스터를 구축하는 데 돈을 씁니다. 빠른 참고 사항 : 저는 응용 기계 학습에 대한 배경 지식이있는 학계이며 데이터 과학 분야에서 약간의 연구를 중단했습니다. 나는 컴퓨팅 도구를 사용하지만 거의 설정이 필요하지 않습니다.

VM 3 개 (마스터 1 개, 슬레이브 2 개)를 만들고 Spark를 성공적으로 설치했습니다. 모든 것이 제대로 작동하는 것으로 보입니다. 내 문제는 클러스터의 컴퓨터에서 실행되지 않는 브라우저에서 연결할 수있는 Jupyter 서버를 만드는 데 있습니다.

Jupyter 노트북을 성공적으로 설치 했으며 실행됩니다. 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? 문제는 논쟁의 순서에 의한 것일 수도 있습니다.
Gábor Bakos

답변:


12

IPython은 이제 버전 4.0 으로 옮겨졌습니다. 즉,이를 사용하는 경우 구성이 ~/.jupyter아닌 에서 구성을 읽습니다 ~/.ipython. 당신은 새로운 구성 파일을 만들어야합니다

jupyter notebook --generate-config

그런 다음 ~/.jupyter/jupyter_notebook_config.py필요에 따라 결과 파일 을 편집하십시오 .

자세한 설치 지침은 여기를 참조 하십시오 .


나는 왜 그들이 jupyter를 ipython과 분리하여 ipython notebook 명령을 유지했는지 궁금해했습니다. 이것이 정확히 혼란스러워하는 이유입니다. 프로필 불일치를 지적 해 주신 귀하와 kau zsh에게 감사드립니다. ipython 노트북 명령을 사용할 때는 ipython 프로파일을 사용하고 해당 명령을 사용할 때는 jupyter-notebook 프로파일을 사용해야합니다.
AN6U5

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 경로에 있지 않다는 것입니다. 구성 파일 / 경로 등에 수동으로 추가하는 데 실패한 후 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 () 전에 import pyspark가 오류와 함께 돌아 왔습니다.

방금 sc를 입력하고
0x4526d30의 pyspark.context.SparkContext를 테스트했습니다.

모두 나를 위해 지금 일하고 있습니다.


사이트 Anahita에 오신 것을 환영합니다 :)
Dawny33
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.