PyCharm搭建Spark开发环境的实现步骤


Posted in Python onSeptember 05, 2019

1.安装好JDK

下载并安装好jdk-12.0.1_windows-x64_bin.exe,配置环境变量:

  • 新建系统变量JAVA_HOME,值为Java安装路径
  • 新建系统变量CLASSPATH,值为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(注意最前面的圆点)
  • 配置系统变量PATH,添加 %JAVA_HOME%bin;%JAVA_HOME%jrebin

在CMD中输入:java或者java -version,不显示不是内部命令等,说明安装成功。

2.安装Hadoop,并配置环境变量

下载hadoop:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz

PyCharm搭建Spark开发环境的实现步骤

  • 解压hadoop-2.7.7.tar.gz特定路径,如:D:\adasoftware\hadoop
  • 添加系统变量HADOOP_HOME:D:\adasoftware\hadoop
  • 在系统变量PATH中添加:D:\adasoftware\hadoop\bin
  • 安装组件winutils:将winutils中对应的hadoop版本中的bin替换自己hadoop安装目录下的bin

3.Spark环境变量配置

spark是基于hadoop之上的,运行过程中会调用相关hadoop库,如果没配置相关hadoop运行环境,会提示相关出错信息,虽然也不影响运行。

  • 下载对应hadoop版本的spark:http://spark.apache.org/downloads.html
  • 解压文件到:D:\adasoftware\spark-2.4.3-bin-hadoop2.7
  • 添加PATH值:D:\adasoftware\spark-2.4.3-bin-hadoop2.7\bin;
  • 新建系统变量SPARK_HOME:D:\adasoftware\spark-2.4.3-bin-hadoop2.7;

4.下载安装anaconda

anaconda集成了python解释器和大多数python库,安装anaconda 后不用再安装python和pandas numpy等这些组件了。下载地址。最后将python加到path环境变量中。

5.在CMD中运行pyspark,出现类似下图说明安装配置正常:

PyCharm搭建Spark开发环境的实现步骤

出现这种warning是因为JDK版本为12,太高了,但是不影响运行。没有影响。

6.在pycharm中配置spark

打开PyCharm,创建一个Project。然后选择“Run” ->“Edit Configurations”?>点击+创建新的python Configurations

PyCharm搭建Spark开发环境的实现步骤

选择 “Environment variables” 增加SPARK_HOME目录与PYTHONPATH目录。

  • SPARK_HOME:Spark安装目录
  • PYTHONPATH:Spark安装目录下的Python目录

PyCharm搭建Spark开发环境的实现步骤

选择 File->setting->你的project->project structure

右上角Add content root添加:py4j-some-version.zip和pyspark.zip的路径(这两个文件都在Spark中的python文件夹下)

保存即可

7.测试是否配置成功,程序代码如下,创建一个python程序放进去就可以:

import os
import sys

# Path for spark source folder
os.environ['SPARK_HOME'] = "D:\adasoftware\spark"

# Append pyspark to Python Path
sys.path.append("D:\adasoftware\spark\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)

若程序正常输出: "Successfully imported Spark Modules"就说明环境已经可以正常执行。

PyCharm搭建Spark开发环境的实现步骤

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 随机数使用方法,推导以及字符串,双色球小程序实例
Sep 12 Python
python 读取竖线分隔符的文本方法
Dec 20 Python
Python 使用Numpy对矩阵进行转置的方法
Jan 28 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
Feb 20 Python
浅谈python编译pyc工程--导包问题解决
Mar 20 Python
Python基础之函数的定义与使用示例
Mar 23 Python
python+jinja2实现接口数据批量生成工具
Aug 28 Python
python使用多线程编写tcp客户端程序
Sep 02 Python
Python3 main函数使用sys.argv传入多个参数的实现
Dec 25 Python
Tensorflow实现在训练好的模型上进行测试
Jan 20 Python
Tensorflow中的降维函数tf.reduce_*使用总结
Apr 20 Python
使用Python拟合函数曲线
Apr 14 Python
浅谈Python_Openpyxl使用(最全总结)
Sep 05 #Python
python实现人工智能Ai抠图功能
Sep 05 #Python
深入了解Python在HDA中的应用
Sep 05 #Python
python urllib爬虫模块使用解析
Sep 05 #Python
详解Python3 pandas.merge用法
Sep 05 #Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
Sep 05 #Python
python爬取Ajax动态加载网页过程解析
Sep 05 #Python
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
php 方便水印和缩略图的图形类
2009/05/21 PHP
PHP 生成的XML以FLASH获取为乱码终极解决
2009/08/07 PHP
如何利用php array_multisort函数 对数据库结果进行复杂排序
2013/06/08 PHP
ThinkPHP的RBAC(基于角色权限控制)深入解析
2013/06/17 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
项目实践之javascript技巧
2007/12/06 Javascript
jquery 分页控件实现代码
2009/11/30 Javascript
查找iframe里元素的方法可传参
2013/09/11 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
jQuery中on()方法用法实例
2015/01/19 Javascript
解决node-webkit 不支持html5播放mp4视频的方法
2015/03/11 Javascript
Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果
2016/07/07 Javascript
js 打开新页面在屏幕中间的实现方法
2016/11/02 Javascript
详解AngularJS用Interceptors来统一处理HTTP请求和响应
2017/06/08 Javascript
十大 Node.js 的 Web 框架(快速提升工作效率)
2017/06/30 Javascript
vue写一个组件
2018/04/09 Javascript
Vue.js获取被选择的option的value和text值方法
2018/08/24 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
vue使用prop可以渲染但是打印台报错的解决方式
2019/11/13 Javascript
微信小程序实用代码段(收藏版)
2019/12/17 Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
2020/09/04 Javascript
Python实现分割文件及合并文件的方法
2015/07/10 Python
python中字符串类型json操作的注意事项
2017/05/02 Python
详解Python文本操作相关模块
2017/06/22 Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
2018/01/16 Python
Python的条件表达式和lambda表达式实例
2019/01/31 Python
python列表,字典,元组简单用法示例
2019/07/11 Python
对pytorch中的梯度更新方法详解
2019/08/20 Python
pycharm中import呈现灰色原因的解决方法
2020/03/04 Python
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
伦敦新晋轻奢耳饰潮牌:Tada & Toy
2020/05/25 全球购物
医学专业五年以上个人求职信
2013/12/03 职场文书
拾金不昧表扬稿大全
2015/05/05 职场文书
2016年社区服务活动总结
2016/04/06 职场文书