使用PyCharm连接虚拟机运行spark任务,本地开发:远程提交测试

在本地写代码,右键运行,将代码自动提交到集群上

spark是Standalone集群

1) 集群环境准备好

sql 复制代码
#启动集群:第一台机器
start-dfs.sh
cd /opt/installs/spark
sbin/start-master.sh
sbin/start-workers.sh
sbin/start-history-server.sh

2) Windows指定远程解析器

在虚拟机上创建一个文件夹,用于同步本地代码到服务上。

sql 复制代码
#创建同步目录:将Windows上的代码和数据同步到Linux的这个目录下
mkdir -p /root/pyspark_code

至此,以后右键运行代码,都会将代码自动提交给集群,让集群运行,假如你想换回本地,可以在此处将环境切换回来。

问题:

解决方案:在bigdata01中,安装pyspark。

sql 复制代码
我们在linux上配置了阿里云的源,不代表在base中也可以使用,运行时需要带上源地址
pip install pyspark==3.1.2 -i https://pypi.tuna.tsinghua.edu.cn/simple/

验证是否已经安装:

sql 复制代码
pip list 或者  conda list
也可以这么干:
pip list | grep pyspark

下载完成之后,重启一下 pycharm.

3)代码如何提交到集群上

第一种是自动提交

第二种是手动提交:

同步后,在linux上查看,有代码:

运行的话,直接在本地右键运行即可,以上代码如果需要传递参数,在ide工具中写。

假如在运行过程中,出现

sql 复制代码
Initial job has not accepted any resources; check your cluster UI to ensure that workers are registe

程序在运行时,没有资源,请确保你有worker,假如有worker,请查看worker是否有资源。

有可能是以下几个问题:

1、集群资源不足,关闭掉没用的资源

2、目前集群中有其他任务,占用了资源,直接关闭掉

修改一些配置:

修改 worker 的内存大小:

相关推荐
兵慌码乱4 小时前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
大大大大晴天5 小时前
Hudi技术内幕:Key Generation原理与实践
大数据
luckdewei7 小时前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi0013 小时前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn14 小时前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
zzzzzz31014 小时前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
金銀銅鐵1 天前
[Python] 从《千字文》中随机挑选汉字
后端·python
cup111 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill