Pyspark 命令无法识别
Posted
技术标签:
【中文标题】Pyspark 命令无法识别【英文标题】:Pyspark command not recognised 【发布时间】:2016-08-05 22:58:37 【问题描述】:我安装了 anaconda,还下载了 Spark 1.6.2。我正在使用此答案中的以下说明为 Jupyter enter link description here 配置 spark
我已将 spark 目录下载并解压为
~/spark
现在当我 cd 进入此目录并进入 bin 时,我看到以下内容
SFOM00618927A:spark $ cd bin
SFOM00618927A:bin $ ls
beeline pyspark run-example.cmd spark-class2.cmd spark-sql sparkR
beeline.cmd pyspark.cmd run-example2.cmd spark-shell spark-submit sparkR.cmd
load-spark-env.cmd pyspark2.cmd spark-class spark-shell.cmd spark-submit.cmd sparkR2.cmd
load-spark-env.sh run-example spark-class.cmd spark-shell2.cmd spark-submit2.cmd
我还在我的 .bash_profile 和 .profile 中添加了上述答案中提到的环境变量
现在在 spark/bin 目录中,我首先要检查的是 pyspark 命令是否首先在 shell 上工作。
所以我在执行完 cd spark/bin 后执行此操作
SFOM00618927A:bin $ pyspark
-bash: pyspark: command not found
按照我可以做的所有步骤后的答案
pyspark
在任何目录的终端中,它应该启动一个带有火花引擎的 jupyter 笔记本。但是即使外壳中的 pyspark 也无法正常工作,忘记让它在 juypter notebook 上运行
请告知这里出了什么问题。
编辑:
我做到了
open .profile
在主目录中,这是存储在路径中的内容。
export PATH=/Users/854319/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/Users/854319/spark/bin
export PYSPARK_DRIVER_PYTHON=ipython
export PYSPARK_DRIVER_PYTHON_OPTS='notebook' pyspark
【问题讨论】:
您是否按照答案的第 8 步进行操作?将 bin 文件夹添加到 PATH 环境变量中? cd spark/bin 之后,$ ./pyspark 就可以了,你试过了吗 @rfkortekaas 是的,我遵循了答案的第 8 步。我的路径中的所有这些仍然无法正常工作 能否添加PATH的内容:'echo $PATH' @rfkortekaas 您好,请查看以下/Users/i854319/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/ texbin 我也尝试了 SANDHYALALKUMAR 的答案。它给出了一个错误:即使我已经安装了它,也没有安装 Java 运行时。是否需要重启电脑才能生效? 【参考方案1】:1- 您需要设置JAVA_HOME
并触发shell 路径才能找到它们。在您的.profile
中设置它们后,您可能想要
source ~/.profile
激活当前会话中的设置。从您的评论中,我可以看到您已经遇到了JAVA_HOME
问题。
请注意,如果您有.bash_profile
或.bash_login
,.profile
将无法按照here 的描述工作
2- 当你在spark/bin
时,你需要运行
./pyspark
告诉shell目标在当前文件夹中。
【讨论】:
好的,我设置了这个,现在当我做 pyspark 时,它会打开一个 jupyter notebook。我不必做 ./pyspark .. 最后一件事 - 如果我只想在控制台上打开 pyspark 而不是打开笔记本怎么办。那么我们输入什么命令呢? 您需要清除PYSPARK_DRIVER_PYTHON
和PYSPARK_DRIVER_PYTHON_OPTS
的设置。【参考方案2】:
这是我的环境变量,希望对你有所帮助:
# path to JAVA_HOME
export JAVA_HOME=$(/usr/libexec/java_home)
#Spark
export SPARK_HOME="/usr/local/spark" #version 1.6
export PATH=$PATH:$SPARK_HOME/bin
export PYSPARK_SUBMIT_ARGS="--master local[2]"
export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH
export PYTHONPATH=$SPARK_HOME/python/lib/py4j-0.9-src.zip:$PYTHONPATH
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
^^ 如果您不希望笔记本启动,请删除 Pyspark_driver_python_opts 选项,否则您可以完全忽略它并在需要时在命令行中使用它。
我在另一行中有 anaconda vars 要附加到 PATH。
【讨论】:
帮助了特定的字符串export SPARK_HOME="/usr/local/spark" #version 1.6
,但是我已经下载了源代码本身:/Users/iamtodor/programming/tools/spark-3.2.0-bin-hadoop3.2
【参考方案3】:
对于在 MacOS Catalina 期间或之后来到这里的任何人,请确保您在 zshrc 而不是 bash 中建立/采购变量。
$ nano ~/.zshrc
# Set Spark Path
export SPARK_HOME="YOUR_PATH/spark-3.0.1-bin-hadoop2.7"
export PATH="$SPARK_HOME/bin:$PATH"
# Set pyspark + jupyter commands
export PYSPARK_SUBMIT_ARGS="pyspark-shell"
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='lab' pyspark
$ source ~/.zshrc
$ pyspark
# 自动打开 Jupyter Lab 并初始化 PySpark。
【讨论】:
以上是关于Pyspark 命令无法识别的主要内容,如果未能解决你的问题,请参考以下文章