python - 无法识别 Pyspark 命令

标签 python apache-spark pyspark

我安装了 anaconda,还下载了 Spark 1.6.2。我正在使用此答案中的以下说明为 Jupyter 配置 spark enter link description here

我已经下载并解压了spark目录为

~/spark

现在,当我进入这个目录并进入 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 

在任何目录的终端中,它应该启动一个带有 spark 引擎的 jupyter notebook。但即使是 shell 中的 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

最佳答案

1- 您需要为 shell 设置 JAVA_HOME 和 spark 路径以找到它们。在您的 .profile 中设置它们之后,您可能想要

source ~/.profile

激活当前 session 中的设置。从您的评论中我可以看出您已经遇到了 JAVA_HOME 问题。

请注意,如果您有 .bash_profile.bash_login.profile 将无法像描述的那样工作 here

2- 当你在 spark/bin 你需要运行

./pyspark

告诉 shell 目标在当前文件夹中。

关于python - 无法识别 Pyspark 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38798816/

相关文章:

python - 导入模块会产生问题吗?

apache-spark - 如何在多列上编写 Pyspark UDAF?

python - 删除 pyspark 或 pysql 中包含特殊字符(如 '/')的行

python - 使用 lower 函数在文本清理中将 pyspark 数据框中单列中的值转换为小写

python - 从 pyspark 数据帧向量列中查找最大值索引的错误

python - 从事件处理函数返回值 wxPython

python - "syscall-template.S: No such file or directory"是 GDB 还是我的程序的错误

python - 索引字符串,获取SyntaxError/Python

python - Pyspark 按列分组元素并创建字典

apache-spark - 在 spark 本地模式下从 worker 内部写入文件不会写入?