一零二四、pyspark在jupyter中的完美运行

发布于:2023-01-04 ⋅ 阅读:(253) ⋅ 点赞:(0)

1、配置环境变量

(1)JAVA_HOME

(2)SPARK_HOME

(3)HADOOP_HOME

2、安装pyspark包

注意此处默认安装的是最新的pyspark包,最新的跑不起来,换为2.3.2 即可使用

org.apache.spark.api.python.PythonUtils.isEncryptionEnabled does not exist in the JVM

这个报错即需要将 pyspark 版本降为 2.3.2 完美运行

pip install pyspark==2.3.2

最好加上镜像源,会快很多

https://blog.csdn.net/m0_54925305/article/details/126596822?spm=1001.2014.3001.5501

3、初始化找到spark环境

py4j.protocol.Py4JError: org.apache.spark.api.python.PythonUtils.isEncryptionEnabled does not exist in the JVM

import findspark
findspark.init()

当然需要:(最好加上镜像源,会快很多)

pip install findspark

4、运行代码

import findspark
findspark.init()
from pyspark import SparkConf, SparkContext 
## 配置spark
sc.stop() #多次运行需要先停止再重新运行
sparkConf = SparkConf().setMaster("local[6]").setAppName("My App") #"spark://node1:7077"为主节点master的地址
sc = SparkContext(conf=sparkConf)
file = sc.textFile("E:\Python大数据分析程序\share\stu_Score.csv")
file.collect()

 可以随便找个数据读一下看看

ValueError: Cannot run multiple SparkContexts at once; existing SparkContext(app=PySparkShell, master=local[*]) created by <module> at /usr/local/spark/python/pyspark/shell.py:59 

出现这个错误是因为之前已经启动了SparkContext,所以需要先关闭spark,然后再启动。

也就是前面写的sc.stop()

步骤总结:

1、配置环境变量

2、安装pyspark包(2.3.2)

3、安装findspark包并在程序中加入 import findspark  findspark.init() 这两行代码

4、运行程序


网站公告

今日签到

点亮在社区的每一天
去签到