如何在Windows中使用pyspark启动Spark Shell?

如何在Windows中使用pyspark启动Spark Shell?,pyspark,apache-spark-1.4,Pyspark,Apache Spark 1.4,我是Spark的初学者,尝试按照这里的说明使用cmd从Python初始化Spark shell: 但当我在cmd中运行时,会出现以下情况: C:\Users\Alex\Desktop\spark-1.4.1-bin-hadoop2.4\>c:\Python27\python bin\pyspark 然后我收到以下错误消息: File "bin\pyspark", line 21 export SPARK_HOME="$(cd ="$(cd "`dirname "$0"`"/..; p

我是Spark的初学者,尝试按照这里的说明使用cmd从Python初始化Spark shell:

但当我在cmd中运行时,会出现以下情况:

C:\Users\Alex\Desktop\spark-1.4.1-bin-hadoop2.4\>c:\Python27\python bin\pyspark 
然后我收到以下错误消息:

File "bin\pyspark", line 21 
export SPARK_HOME="$(cd ="$(cd "`dirname "$0"`"/..; pwd)" 
SyntaxError: invalid syntax
我做错了什么

另外,在cmd中,我只尝试
C:\Users\Alex\Desktop\spark-1.4.1-bin-hadoop2.4>bin\pyspark


然后我收到
“python”不被识别为内部或外部命令、可操作程序或批处理文件。

您需要在系统路径中提供python,您可以使用
setx添加它:

setx path "%path%;C:\Python27"

在用户“maxymoo”的参考和帮助下,我找到了一种方法来设置Windows 7的永久路径。说明如下:


我是一个全新的Spark用户(从今天开始,真的)。我在Windows10和Windows7机器上使用spark 1.6.0。以下几点对我很有用:

import os

import sys

spark_home = os.environ.get('SPARK_HOME', None)

if not spark_home:

raise ValueError('SPARK_HOME environment variable is not set')

sys.path.insert(0, os.path.join(spark_home, 'python'))

sys.path.insert(0, os.path.join(spark_home, 'C:/spark-1.6.0-bin-hadoop2.6/python/lib/py4j-0.9-src.zip'))

execfile(os.path.join(spark_home, 'python/pyspark/shell.py'))

使用上面的代码,我能够在IPython笔记本和我热衷的Python IDE中启动Spark。在此之前,我只能通过cmd提示符启动pyspark。只有为Python和Spark(pyspark)正确设置了环境变量,上面的代码才能工作

每当我在ipython中启动pyspark时,我都会运行这些路径设置:

import os
import sys
# Sys.setenv('SPARKR_SUBMIT_ARGS'='"--packages" "com.databricks:spark-csv_2.10:1.0.3" "sparkr-shell"') for R
### MANNN restart spart using ipython notebook --profile=pyspark --packages com.databricks:spark-csv_2.10:1.0.3  
os.environ['SPARK_HOME']="G:/Spark/spark-1.5.1-bin-hadoop2.6"

sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/bin") 
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python") 
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/pyspark/") 
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/pyspark/sql")
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/pyspark/mllib")
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/lib") 
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/lib/pyspark.zip")
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/lib/py4j-0.8.2.1-src.zip") 
sys.path.append("G:/Spark/spark-1.5.1-bin-hadoop2.6/python/lib/pyspark.zip")

from pyspark import SparkContext 
from pyspark import SparkConf
from pyspark import SQLContext 

##sc.stop() # IF you wish to stop the context
sc = SparkContext("local", "Simple App")

只需在系统->环境变量->路径中设置路径即可

  • 我的系统中的R路径C:\Program Files\R\R-3.2.3\bin
  • 我的系统中的Python路径c:\python27
  • 我的系统中的火花路径c:\Spark-2
路径之间必须用“;”分隔,并且路径之间不得有空格