PySpark+Windows开发环境的搭建

  1. anaconda的安装与环境配置
  2. java的安装与环境配置
  3. scala的安装与环境配置
  4. hadoop的安装与环境配置
  5. spark的安装与环境配置
  6. 下载winutils.exe和hadoop.dll
  7. Python下Spark开发环境搭建
  8. 安装Py4j

一、Anaconda的安装与环境配置

下载anaconda

anaconda安装过后,记得去环境变量看一下是否有以下路径。

检验是否安装成功

打开cmd输入python、conda env list指令查看是否显示相关版本信息

二、Java的安装与配置

首先需要下载并安装jdk,然后配置环境变量。

Oracle官网下载,下载地址是Java SE Downloads 。

下载jdk的方法

添加环境变量

然后PATH(【计算机】--【属性】--【高级系统设置】,然后在系统属性里选择【高级】--【环境变量】)里添加安装的JDK目录下的bin文件夹路径名。如果是win7的话,记得用英文的分号;进行分割。

 设置成功后,打开cmd,输入java -version,看是否能显示Java版本的相关信息信息。如果可以,说明成功。反之,咱懂得,咱继续加油吧!

三、Scala的安装与环境配置

百度搜索scala官网,下载scala并安装配置环境

添加环境变量

安装成功后,默认会将Scala的bin目录添加到PATH系统变量中去(如果没有,和上面JDK安装步骤中类似,将Scala安装目录下的bin目录路径,添加到系统变量PATH中)。验证是否安装成功,打开cmd窗口,输入scala然后回车,如果能够正常进入到Scala的交互命令环境则表明安装成功。

备注:如果不能显示版本信息,未能进入Scala的交互命令行,通常有两种可能性: 

1)系统变量PATH中没正确添加Scala安装目录下的bin文件夹路径名。
2)Scala未能够正确安装,重复上面的步骤即可。

四、Hadoop的安装与环境配置

清华镜像hadoop版本。下载后缀为tar.gz的文件。src版本是源码,如果需要对Hadoop进行更改或者想自己进行编译,可以下载对应src文件。

下载安装包后,进行解压,然后添加环境变量。添加变量名为HADOOP_HOME,值为Hadoop的解压目录。

然后再设置hadoop目录下的bin目录到系统变量的PATH下,如果已经添加了HADOOP_HOME系统变量,也可以用%HADOOP_HOME%\bin来指定bin文件夹路径名。

五、Spark的安装与环境配置

下载Spark。Spark官网进行下载(http://spark.apache.org/)或在国内镜像网站中下载:清华镜像(https://mirror.tuna.tsinghua.edu.cn/)、bit镜像(http://mirror.bit.edu.cn/web/)等)。

选择带有Hadoop版本的Spark。

因为hadoop我们下载的是2.7,所以我们需要选择基于hadoop2.7的版本。 

下载后进行解压,并重命名为Spark(*:在Spark的文件目录路径名中,不要出现空格,类似于“Program Files”这样的文件夹名是不被允许的。咱最好在C盘或D盘新建一个Spark文件夹存放)

添加环境变量:

添加Spark的bin目录路径到系统变量PATH。添加变量名为SPARK_HOME,变量值为保存Spark的安装目录。

设置完系统变量后,在任意目录下的cmd命令行中,直接执行spark-shell命令,即可开启Spark的交互式命令行模式。

以下错误,是由于先安装Spark,没有安装hadoop造成的。安装配置Hadoop后解决。 

六、下载winutils.exe和hadoop.dll

https://github.com/steveloughran/winutils下载。选择你安装的Hadoop版本号,然后进入到bin目录下,找到winutils.exe文件,下载方法是点击winutils.exe文件,进入之后在页面的右上方部分有一个Download按钮,下载即可。

将下载的winutils.exe和hadoop.dll放入到Hadoop的bin目录下。

七、Python下Spark开发环境搭建

将刚刚安装的Spark-python目录下的pysparks文件夹复制到anaconda\lib\site-packages。

安装Py4j

打开cmd或anaconda prompt,输入pip install py4j

可能出现的问题:

CMD命令:不是内部或者外部命令也不是可运行的程序或批处理文件

解决方法:

在高级环境变量设置里,找到找到名为ComSpec的变量,查看是否是 :“%SystemRoot%\system32\cmd.exe”,如果不是请更改。

然后找到名为PATH的变量,点击编辑:
%SystemRoot%\system32、%SystemRoot%、%SystemRoot%\System32\Wbem、C:\Windows\SysWOW64”
将其粘贴到PATH的后面。win7系统记得各个路径之间添加英文分号

修改后,点击确定,并重启cmd。这时候应该就可以了。

运行程序报错找不到SPARK_HOME

解决方法:

盲猜正确的解决方法应该是要在anaconda里边添加SPARK_HOME的地址。关于这个方法大家可以上网搜索一下关于“anaconda如何设置环境变量”。但是这一切都是盲猜哈,我自己也没进行尝试。

我自己的解决方法是:既然anaconda里边没有这个路径,那么我从cmd里启动jupyter notebook是不是可以呢?启动一下,发现嗯果然可以,程序可以正常运行。但是这样也太麻烦了吧,我还是想在桌面直接启动jupyter notebook,然后我就将刚刚启动的jupyter notebook和cmd都关了。重新启动anaconda和jupyter notebook,想着找一下如何在anaconda里设置环境变量。但是还没开始找,我就又不死心的重新运行了程序,发现emmmm??可以了,莫名可以了,好奇怪!!!但是我好高兴!!!就自己也稀里糊涂的,但是它就可以了。难道可能和之前用cmd运行了一下,然后他们之间建立了某种关联有关系么?

记得先安装Hadoop再安装Spark

猜你喜欢

转载自blog.csdn.net/weixin_43717681/article/details/109060105