简单用一下spark,安装配置完之后,用pyspark写了一个简单程序,使用命令行执行
spark-submit xxx.py
不出现如何输出,只有“ INFO ShutdownHookManager: Shutdown hook called”
先说解决方案:把python虚拟环境配置到环境变量PATH里面
场景:
Windows11下简单使用Spark
1安装配置spark:
1.1下载Spark安装包直接解压到某个目录,比如说D:\spark-3.0.0
1.2windows下使用还需要hadoop,就是winutils,一样解压放到某个目录,比如说D:\hadoop-3.0.0
1.3配置环境变量,就打开本机环境变量,把spark和hadoop的安装路径先各自命名为
HADOOP_HOME和SPARK_HOME,然后在系统PATH里面点击新建系统变量,加入
%HADOOP_HOME%\bin和%SPARK_HOME%、%SPARK_HOME%\bin
1.4验证是否安装成功,打开cmd窗口,输入spark-shell出现内容说明就成功了
2接下来写程序:
2.1我是在Pycharm里面新建虚拟环境后,pip install pyspark==3.0.0,安装pyspark
2.2新建一个spark1.py脚本,简单写点东西
3执行写的程序:
3.1先在spark1.py所在的文件夹,打开cmd窗口,输入spark-submit spark1.py,直接不显示任何输出,只有“ INFO ShutdownHookManager: Shutdown hook called”还有个别的这两句
4解决问题:#把python虚拟环境配置到环境变量PATH里面
4.1先排查一下安装的各个程序的版本是不是对应的,发现没什么问题
4.2将自己新建的虚拟环境,就是写spark1.py的那个虚拟环境加入到环境变量里面:
具体来说,是venv里面的script所在的路径,我这里是D:\pythonWorkSapce\pyspark\venv\Scripts,直接加到环境变量PATH里面,就跟配置spark和hadoop的环境一样,简单放个图,并不优雅,just work~:
然后再执行就没问题了
5后话:
Pycharm、IDEA这类好用的工具用的多了,都是建虚拟环境,环境变量也不配置了,像这种涉及到命令行的东西,还是要注意。