-
spark+python环境搭建_pyspark环境配置
- 网站名称:spark+python环境搭建_pyspark环境配置
- 网站分类:技术文章
- 收录时间:2025-08-23 01:51
- 网站地址:
“spark+python环境搭建_pyspark环境配置” 网站介绍
最近项目需要用到spark大数据相关技术,周末有空spark环境搭起来...
目标
spark,python运行环境部署在linux服务器
个人通过vscode开发
通过远程python解释器执行代码
准备
腾讯云服务器一台
个人笔记本一台
vscode
spark3.2,anaconda3,jdk1.8
spark安装
# 下载spark安装包
wget https://dlcdn.apache.org/spark/spark-3.2.1/spark-3.2.1-bin-hadoop3.2.tgz
# 创建安装目录/export/server
mkdir /export/server
# 安装包解压
tar -zxvf spark-3.2.1-bin-hadoop3.2.tgz -C "/export/server"
# 创建spark安装目录软连接
ln -s /export/server/spark-3.2.1-bin-hadoop3.2/ /export/server/spark
# 进入spark可执行程序目录,执行pyspark
cd /export/server/spark/bin; ./pyspark => JAVA_HOME is not set
提示jdk未安装,下一步进行jdk安装...
jdk安装
# 将准备好的jdk安装包jdk-8u161-linux-x64.tar.gz解压至/export/server目录
tar -zxvf /home/dev/jdk-8u161-linux-x64.tar.gz -C /export/server
# 创建jdk安装目录软连接
ln -s jdk1.8.0_161/ jdk8
# 添加JAVA_HOME环境变量
vi /etc/profile,添加
export JAVA_HOME=/export/server/jdk8
export PATH=$PATH:$JAVA_HOME/bin
# 再次执行/export/server/spark>bin/pyspark => env: python3: No such file or directory
提示python3没有安装,下一步进行python3安装...
Anaconda3安装(即python)
# 下载anaconda3安装包
wget https://repo.anaconda.com/archive/Anaconda3-2022.05-Linux-x86_64.sh
# 安装anoconda3
sh Anaconda3-2022.05-Linux-x86_64.sh
在安装过程中的交互提示依次输入: enter => yes => /export/server/anaconda3 => yes
直到安装完成
# 重新登录终端看见(base)开头表示安装成功
# vi /etc/profile,添加
export PYSPARK_PYTHON=/export/server/anaconda3/bin/python
# 再次执行/export/server/spark>bin/pyspark => pyspark启动成功,进入交互页面
# 输入python测试代码:
>>>
>>> sc.parallelize([1,2,3,4,5]).map(lambda x: x+1).collect()
[2, 3, 4, 5, 6] #运行结果
# pyspark运行时,在新开的终端检查4040端口监听情况
netstat -anp|grep 4040
tcp6 0 0 :::4040 :::* LISTEN -
每一个Spark程序在运行的时候, 会绑定到Driver所在机器的4040端口上.
如果4040端口被占用, 会顺延到4041...,可通过浏览器访问 4040端口
验证
# 通过spark-submit执行.py脚本,执行官方sample:
/export/server/spark>bin/spark-submit \
/export/server/spark/examples/src/main/python/pi.py 10
# 自定义脚本helloworld.py:
print("hello,world!")
# 通过spark-submit执行
/export/server/spark>bin/spark-submit /export/demo/helloworld.py
hello,world! # 输出
PySpark库安装
conda create -n pyspark python=3.9 #创建虚拟环境pyspark
conda activate pyspark #切换虚拟环境为pyspark
# 检查虚拟环境pyspark的python解释器路径
type python => python is /export/server/anaconda3/envs/pyspark/bin/python
vi /etc/profile编辑
PYSPARK_PYTHON=/export/server/anaconda3/envs/pyspark/bin/python
pip install pyspark -i https://pypi.tuna.tsinghua.edu.cn/simple #安装PySpark
# 验证PySpark
/export/server>python
>>> import pyspark # import pyspark不报错,表示pyspark库安装成功
本地vscode开发远程代码、使用远程解释器执行配置
本地免密访问服务器配置:将本地的公钥(C:\\Users\\your account\\.ssh\\id_rsa.pub)内容
配置在需要免密访问的linux服务器用户的$HOME/.ssh/authorized_keys文件中
vscode安装remote development插件,重启vscode
vscode添加远程ssh targets:
a) 点击ssh targets "+"
b) 在弹出框输入 ssh username@ip 回车
c) 在弹出的下拉项中选择 C:\\Users\\your account\\.ssh\\config
d) 编辑config文件
Host xxx #无需编辑
HostName xxx #无需编辑
User xxx #无需编辑
ForwardAgent yes # 需要新增
IdentityFile C:\\Users\\your account\\.ssh\\id_rsa #需要新增
vscode安装python插件
vscode添加远程python解释器:
a) Ctrl + Shift + p打开命名面板
b) 输入Python: Select Interpreter选择解释器
c) 输入远程python解释器路径: /export/server/anaconda3/envs/pyspark/bin/python
vscode开发,远程执行验证
vscode选择远程服务器打开目录
vscode中新建helloworld.py文件,并录入print("hello,world!")
vscode中执行helloworld.py#使用的是远程解释器
vscode提升缺少package,linux服务安装python包:
pip install jupyter notebook -i https://pypi.tuna.tsinghua.edu.cn/simple
在vscode中重新运行helloworld.py运行成功
完成,以后就可以开心地编写pyspark代码了,再也不担心本机卡卡卡了(*_*),附完成图一张:
更多相关网站
- FLINK(Yarn模式)的安装与部署_flink on yarn per-job
- 如何在Eclipse中搭建Zabbix源码的调试和开发环境
- Docker核心:深入理解Dockerfile_docker的核心技术是什么
- 正点原子I.MX6U嵌入式Linux C应用编程:第一章《应用编程概念》
- 商城微服务项目组件搭建(五)——Kafka、Tomcat等安装部署
- SpringBoot 实现动态配置及项目打包部署上线
- 使用Dockerfile制作自己的docker镜像
- 【大数据】什么是数据集成?(SeaTunnel 集成工具介绍)
- DataEase 集成 CAS 实现用户单点登录
- Hadoop高可用集群搭建及API调用_hadoop集群可用cpu内存资源哪个配置文件
- 神武服务端手游开服架设服务器搭建教程linux
- 第五章制作和提交自己的镜像_制作镜像文件要注意的问题有哪些
- linux java 项目 设置外部yml 设置jvm 并添加启动停止以及重启脚本
- 如何利用 Docker 环境加速 Android 应用的构建
- 搭建一个基于Docker服务的java Web服务器环境2
- DevOps系列之——python编译环境搭建
- 从0到1体验Jenkins+Docker+Git+Registry实现CI自动化发布
- 从零搭建vue + jenkins 超详细教程
- 最近发表
- 标签列表
-
- mydisktest_v298 (35)
- sql 日期比较 (33)
- document.appendchild (35)
- 头像打包下载 (35)
- 梦幻诛仙表情包 (36)
- java面试宝典2019pdf (26)
- disk++ (30)
- 加密与解密第四版pdf (29)
- iteye (26)
- centos7.4下载 (32)
- intouch2014r2sp1永久授权 (33)
- jdk1.8.0_191下载 (27)
- axure9注册码 (30)
- 兔兔工程量计算软件下载 (27)
- ccproxy破解版 (31)
- aida64模板 (28)
- engine=innodb (33)
- shiro jwt (28)
- segoe ui是什么字体 (27)
- head first java电子版 (32)
- clickhouse中文文档 (28)
- jdk-8u181-linux-x64.tar.gz (32)
- 计算机网络自顶向下pdf (34)
- -dfile.encoding=utf-8 (33)
- jdk1.9下载 (32)