我使用 pyspark 的方法是始终在 jupyter 中运行下面的代码。这种方法总是必要的吗?
import findspark
findspark.init('/opt/spark2.4')
import pyspark
sc = pyspark.SparkContext()
Run Code Online (Sandbox Code Playgroud)
如果你想减少findspark
依赖性,你可以确保你的程序中有这些变量.bashrc
export SPARK_HOME='/opt/spark2.4'
export PYTHONPATH=$SPARK_HOME/python:$PYTHONPATH
export PYSPARK_DRIVER_PYTHON="jupyter"
export PYSPARK_DRIVER_PYTHON_OPTS="notebook"
export PYSPARK_PYTHON=python3
export PATH=$SPARK_HOME:$PATH:~/.local/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
Run Code Online (Sandbox Code Playgroud)
根据您的环境以及 Spark 版本更改目录。除此之外,findspark
你的Python解释器必须在你的代码中找到spark目录
如果你让它工作,你可以运行pip uninstall findspark
纯Python解决方案,将此代码添加到您的jupyter笔记本顶部(可能在第一个单元格中):
import os
import sys
os.environ["PYSPARK_PYTHON"] = "/opt/continuum/anaconda/bin/python"
os.environ["SPARK_HOME"] = "/opt/spark2.4"
os.environ["PYLIB"] = os.environ["SPARK_HOME"] + "/python/lib"
sys.path.insert(0, os.environ["PYLIB"] +"/py4j-0.9-src.zip")
sys.path.insert(0, os.environ["PYLIB"] +"/pyspark.zip")
Run Code Online (Sandbox Code Playgroud)
来源:Anaconda 文档
归档时间: |
|
查看次数: |
7799 次 |
最近记录: |