首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >在windows上pycharm配置spark环境

在windows上pycharm配置spark环境

作者头像
用户4128047
发布2025-12-23 15:18:40
发布2025-12-23 15:18:40
2510
举报

在pycharm中配置开发环境 a、打开pycharm,创建一个progect,设置run configuration

在这里插入图片描述
在这里插入图片描述

在环境变量中添加HADOOP_HOME,SPARK_HOME和PYTHONPATH b、安装pyspark 和py4j pyspark安装,在cmd终端中pip install pyspark或者在pycharm的setting中

在这里插入图片描述
在这里插入图片描述

安装的比较慢,勿骄勿躁。 py4j Py4j可以使运行于python解释器的python程序动态的访问java虚拟机中的java对象。Java方法可以像java对象就在python解释器里一样被调用,Java collection也可以通过标准python collection方法调用。Py4j也可以使java程序回调python对象。 测试程序

代码语言:javascript
复制
import os
import sys

# Path for spark source folder
os.environ['SPARK_HOME']="D:\spark-2.2.0-bin-hadoop2.7"

# Append pyspark to Python Path
sys.path.append("D:\spark-2.2.0-bin-hadoop2.7\python")

try:
from pyspark import SparkContext
from pyspark import SparkConf

print ("Successfully imported Spark Modules")

except ImportError as e:
print ("Can not import Spark Modules", e)
sys.exit(1)
在这里插入图片描述
在这里插入图片描述

环境配置好 问题: 安装速度比较慢 解决方案: pip 安装python包-使用豆瓣的镜像源 虽然用easy_install和pip来安装第三方库很方便 它们的原理其实就是从Python的官方源pypi.python.org/pypi 下载到本地,然后解包安装。 不过因为某些原因,访问官方的pypi不稳定,很慢甚至有些还时不时的访问不了。

跟ubuntu的apt和centos的yum有各个镜像源一样,pypi也有。 在国内的强烈推荐豆瓣的源 http://pypi.douban.com/simple/ 注意后面要有/simple目录。 使用镜像源很简单,用-i指定就行了: Linux 平台下安装方式:

代码语言:javascript
复制
sudo easy_install -i http://pypi.douban.com/simple/ ipython
sudo pip install -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple ipython

windows 平台下安装方式:

代码语言:javascript
复制
pip  install  -i  https://pypi.doubanio.com/simple/  --trusted-host pypi.doubanio.com pyspark

使用镜像源很简单,用-i指定就行了:

代码语言:javascript
复制
sudo easy_install -i http://pypi.douban.com/simple/ saltTesting 
sudo pip install -i http://pypi.douban.com/simple/ saltTesting

spark开发常见问题:java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries. 最近在学习研究pyspark机器学习算法,执行代码出现以下异常:

代码语言:javascript
复制
19/06/29 10:08:26 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:379)
at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:394)
at org.apache.hadoop.util.Shell.<clinit>(Shell.java:387)
at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:80)
...........
19/06/29 10:08:26 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties

从程序运行度方面来说,这个异常并不影响spark程序的继续执行。但是作为一个程序员看到异常就如出现bug,必须让这种异常消失! 分析异常:根据提示应该是Hadoop binaries.中缺少winutils.exe这个配置。 解决方法: 1.首先检查本地window环境是否已经安装hadoop,若没有则先配置hadoop环境变量 1)下载Hadoop,我本次操作使用的是hadoop-2.7.3,当然你可以根据自己需求去官网下载 官网下载地址: 网盘分享我使用的版本: 链接: https://pan.baidu.com/s/1-ssNBynSzrC5iG5ozwqAUA 提取码: zdu5 2)配置windows环境变量。本机是windows10系统 先添加HADOOP_HOME配置

在这里插入图片描述
在这里插入图片描述

在配置path路径:

在这里插入图片描述
在这里插入图片描述

3) 下载winutils.exe,hadoop.dll放到hadoop环境的bin目录,建议尽量使用版本匹配的,必然hadoop-2.6就使用2.6版本的。2.7版本就使用2.7.。理论上2.7版本可以使用在2.6版本上

这里提供hadoop-3.2.1版本的这2个文件:

在这里插入图片描述
在这里插入图片描述

重启电脑再次测试 异常提示消失。 提醒:这个异常提示并不一定是spark程序开发时才会出现。在做hadoop程序开发必然写mapreduce程序时 也会遇到同样情况。操作方法一致即可。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档