Python安装spark

一.配置版本

Java JDK 1.8.0_111
Python 3.9.6
Spark 3.1.2
Hadoop 3.2.2

二.配置环境

1.配置JDK

从官网下载相应JDK的版本安装,并进行环境变量的配置
(1)在系统变量新建JAVA_HOME,根据你安装的位置填写变量值
在这里插入图片描述
(2)新建CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(注意前面所需的符号)
在这里插入图片描述
(3)点击Path
在这里插入图片描述
在其中进行新建:%JAVA_HOME%\bin
在这里插入图片描述
(4)配置好后进行确定
(5)验证,打开cmd,输入java -version和javac进行验证

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

此上说明jdk环境变量配置成功

2.配置Spark

(1)下载安装:
Spark官网spark-3.1.2-bin-hadoop3.2下载地址
在这里插入图片描述
(2)解压,配置环境
在这里插入图片描述
(3)点击Path,进行新建:%SPARK_HOME%\bin,并确认
(4)验证,cmd中输入pyspark
在这里插入图片描述
这里提醒我们要安装Hadoop

3.配置Hadoop

(1)下载:
Hadoop官网Hadoop 3.2.2下载地址
在这里插入图片描述
(2)解压,配置环境
在这里插入图片描述
注意:解压文件后,bin文件夹中可能没有以下两个文件:
在这里插入图片描述
下载地址:https://github.com/cdarlint/winutils
配置环境变量CLASSPATH:%HADOOP_HOME%\bin\winutils.exe
(3)点击Path,进行新建:%HADOOP_HOME%\bin,并确认
(4)验证,cmd中输入pyspark
在这里插入图片描述
由上可以看出spark能运行成功,但是会出现如下警告:

WARN ProcfsMetricsGetter: Exception when trying to compute pagesize, as a result reporting of ProcessTree metrics is stopped

这里因为spark为3.x版本有相关改动,使用spar2.4.6版本不会出现这样的问题。
不改版本解决方式(因是警告,未尝试):
方式一:解决方法一
方式二:解决方法二

三.Pycharm配置spark

(1)Run–>Edit Configurations
在这里插入图片描述
(2)对Environment Variables进行配置
在这里插入图片描述
(3)File–>Settings–>Project Structure–>Add Content Root
找到spark-3.1.2-bin-hadoop3.2\python\lib下两个包进行添加
在这里插入图片描述
选择结果:
在这里插入图片描述
(4)测试

# 添加此代码,进行spark初始化
import findspark

findspark.init()


from datetime import datetime, date

from pyspark.sql import SparkSession

spark = SparkSession.builder.getOrCreate()

rdd = spark.sparkContext.parallelize([
    (1, 2., 'string1', date(2000, 1, 1), datetime(2000, 1, 1, 12, 0)),
    (2, 3., 'string2', date(2000, 2, 1), datetime(2000, 1, 2, 12, 0)),
    (3, 4., 'string3', date(2000, 3, 1), datetime(2000, 1, 3, 12, 0))
])
df = spark.createDataFrame(rdd, schema=['a', 'b', 'c', 'd', 'e'])
df.show()

运行结果:
在这里插入图片描述

四.使用anconda中python环境配置spark

1.创建虚拟环境

conda create -n pyspark_env python==3.9.6

查看环境:

conda env list

运行结果:
在这里插入图片描述

2.安装pyspark

切换到pyspark_env并进行安装pyspark

pip install pyspark

在这里插入图片描述

3.环境配置

运行上面的实例,会出现以下错误:
在这里插入图片描述
这说明我们需要配置py4j,SPARK_HOME
SPARK_HOME:
在这里插入图片描述
PYTHONPATH设置:
在这里插入图片描述
HADOOP_HOME设置:
在这里插入图片描述

path中设置:
在这里插入图片描述

4.运行

在这里插入图片描述

# 添加此代码,进行spark初始化
import findspark

findspark.init()


from datetime import datetime, date

from pyspark.sql import SparkSession

spark = SparkSession.builder.getOrCreate()

rdd = spark.sparkContext.parallelize([
    (1, 2., 'string1', date(2000, 1, 1), datetime(2000, 1, 1, 12, 0)),
    (2, 3., 'string2', date(2000, 2, 1), datetime(2000, 1, 2, 12, 0)),
    (3, 4., 'string3', date(2000, 3, 1), datetime(2000, 1, 3, 12, 0))
])
df = spark.createDataFrame(rdd, schema=['a', 'b', 'c', 'd', 'e'])
df.show()

运行结果同上

  • 10
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值