Python学习—PySpark环境搭建

PySpark是Python整合Spark的一个扩展包,可以使用Python进行Spark开发。而PySpark需要依赖Spark环境,Spark需要依赖Hadoop环境,而且,本地环境需要安装JDK和Scala。

一、环境准备

  • Scala环境搭建,本例环境为2.11.8
  • JDK环境搭建,本例环境为jdk1.8
  • Python环境准备,本例环境为Anaconda,版本为python 3.7

说明

  • 本例中假设上述环境已经搭建成功
  • 本例中所有环境均搭建在本地,本例为windows10

二、环境搭建

方案一

在本地搭建Hadoop+Spark+Python环境

1)Hadoop环境搭建

  • 安装包下载

官方下载地址:https://www.apache.org/dist/hadoop/common/选择你需要的版本

Python学习—PySpark环境搭建_第1张图片
本例为 hadoop-2.8.5

  • 本地解压

将下载好的包解压到本地环境中,比如/D:/Hadoop/hadoop-2.8.5/

  • 添加环境变量

    a.添加环境变量HADOOP_HOME=解压后路径,比如HADOOP_HOME=D:\Hadoop\hadoop-2.8.5

    Python学习—PySpark环境搭建_第2张图片

    b.向PATH中添加追加HADOOP_HOME\bin

  • 测试环境

命令行中输入hadoop version出现版本信息,表示搭建成功

Python学习—PySpark环境搭建_第3张图片

  • 本地bin目录替换

因为hadoop是搭建在linux集群上的,搭建本地环境(windows)需要windows环境支持包,这里我们直接替换本地hadoop的bin文件夹。
下载地址:https://github.com/cdarlint/winutils,下载对应版本替换本地/bin目录

2)Spark环境搭建

  • 安装包下载

官方地址:https://archive.apache.org/dist/spark/,选择Spark版本以及对应hadoop版本

Python学习—PySpark环境搭建_第4张图片
本例为 spark-2.2.0-bin-hadoop2.7

  • 本地解压

解压到本地环境中,比如D:\Spark\spark-2.2.0-bin-hadoop2.7

  • 添加环境变量

    a. 添加环境变量SPARK_HOME=解压后的目录,比如SPARK_HOME=D:\Spark\spark-2.2.0-bin-hadoop2.7
    b. 向PATH追加SPARK_HOME\bin

  • 测试环境

命令行中输入spark-shell出现

Python学习—PySpark环境搭建_第5张图片

即表示搭建成功,

  • 说明
    如果出现类似缺少winutil或者hivesession等错误,检查hadoop\bin文件夹是否替换成功,或者替换的版本是否一致。

3) pyspark环境整合

  • 安装包解压

a. 复制spark安装目录\python\lib中的py4j-0.10.4-src.zippyspark.zip包,如:

Python学习—PySpark环境搭建_第6张图片

b. 粘贴包并解压至Anaconda安装目录\Lib\site-package下,如果没有使用Anaconda,把Anaconda安装目录替换成Python安装目录。如:

Python学习—PySpark环境搭建_第7张图片

  • 本地测试

在命令行输入python进入python环境,输入import pyspark as ps不报错即表示成功

Python学习—PySpark环境搭建_第8张图片

方案二

该方案与上述Spark环境搭建基本一致

  • 直接从官网获取完整的Pyspark包
  • 解压到本地环境中
  • 配置环境变量PYSPARK_HOME,以及path追加PYSPARK_HOME\bin
  • 复制并解压pyspark解压目录\python\lib中的py4jpyspark包到Anaconda安装目录\Lib\site-package

结语

对于Python和Spark的整合,虽然官方提供了相关包Pyspark,Pyspark是依赖Py4j包的。除此之外,还需要基于一些已有的环境,整体完整的环境为JDK+Scala+Hadoop+Spark+Python以及常用的IDE,笔者这里使用的是PyCharm。

你可能感兴趣的:(Python学习—PySpark环境搭建)