我在控制台中运行命令pyspark
时尝试触发jupyter笔记本。当我现在输入它时,它只在控制台中启动和交互式shell。但是,输入长行代码并不方便。有没有办法将jupyter笔记本连接到pyspark shell?感谢。
答案 0 :(得分:4)
假设您在运行Jupyter的任何地方安装了Spark,我建议您使用findspark。一旦pip install findspark
,您就可以
import findspark
findspark.init()
import pyspark
sc = pyspark.SparkContext(appName="myAppName")
...然后去
答案 1 :(得分:4)
我假设您已经安装了spark和jupyter笔记本,并且它们完美无瑕地独立工作。
如果是这种情况,请按照以下步骤操作,您应该可以使用(py)spark后端启动一个jupyter笔记本。
转到spark安装文件夹,那里应该有一个bin
目录:
/path/to/spark/bin
创建一个文件,让我们称之为start_pyspark.sh
打开start_pyspark.sh
并写下如下内容:
#!/bin/bashexport PYSPARK_PYTHON=/path/to/anaconda3/bin/python export PYSPARK_DRIVER_PYTHON=/path/to/anaconda3/bin/jupyter export PYSPARK_DRIVER_PYTHON_OPTS="notebook --NotebookApp.open_browser=False --NotebookApp.ip='*' --NotebookApp.port=8880" pyspark "$@"
将/path/to ...
替换为分别安装了python和jupyter二进制文件的路径。
答案 2 :(得分:1)
cd project-folder/
pip install virtualenv
virtualenv venv
这应该在项目文件夹中创建一个文件夹“venv /”。
输入
运行virtualenvsource venv/bin/activate
pip install jupyter
这应该开始你的virtualenv。然后转到〜/ .bash_profile并输入
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
然后在控制台中输入source ~/.bash_profile
。
你应该好好追求这一点。
如果您在控制台中键入pyspark
,则会弹出一个jupyter笔记本
您还可以通过键入sqlConnector
并执行ipython notebook cell来检查笔记本中是否有sqlConnector
对象。
答案 3 :(得分:0)
保存自己很多配置问题,只需运行Docker容器:here]
答案 4 :(得分:0)
从网站下载spark我已经下载了spark-2.2.0-bin-hadoop2.7,jupyter-notebook
mak@mak-Aspire-A515-51G:~$ chmod -R 777 spark-2.2.0-bin-hadoop2.7
mak@mak-Aspire-A515-51G:~$ export SPARK_HOME='/home/mak/spark-2.2.0-bin-
hadoop2.7'
mak@mak-Aspire-A515-51G:~$ export PATH=$SPARK_HOME:$PATH
mak@mak-Aspire-A515-51G:~$ export PYTHONPATH=$SPARK_HOME/python:$PYTHONPATH
mak@mak-Aspire-A515-51G:~$ export PYSPARK_DRIVER_PYTHON="jupyter"
mak@mak-Aspire-A515-51G:~$ export PYSPARK_DRIVER_PYTHON_OPTS="notebook"
mak@mak-Aspire-A515-51G:~$ export PYSPARK_PYTHON=python3
转到spark目录并打开python3并导入spark,它将成功。
mak@mak-Aspire-A515-51G:~/spark-2.2.0-bin-hadoop2.7/python$ python3
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyspark
mak@mak-Aspire-A515-51G:~/spark-2.2.0-bin-hadoop2.7/python$ jupyter-notebook
import pyspark
如果要从Spark目录外部打开jupyter,则需要执行以下步骤
mak@mak-Aspire-A515-51G:~$ pip3 install findspark
mak@mak-Aspire-A515-51G:~$ python
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyspark
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'pyspark'
>>> import findspark
>>> findspark.init('/home/mak/spark-2.2.0-bin-hadoop2.7')
>>> import pyspark
mak@mak-Aspire-A515-51G:~$ jupyter-notebook
import findspark
findspark.init('/home/mak/spark-2.2.0-bin-hadoop2.7')
import pyspark