pyspark提交任务依赖模块的解决方案

本文介绍了如何处理PySpark任务中对其他模块的依赖,包括直接提交含多个py文件的项目、处理如requests这样的外部库依赖,以及在Yarn上以client和cluster模式运行时的资源配置和优先级设定。
摘要由CSDN通过智能技术生成

直接提交单个py文件

 spark-submit --deploy-mode client  --driver-memory 2G --executor-memory 2G --executor-cores 3 --num-executors 3 --properties-file /etc/spark/conf/spark-defaults.conf test.py

依赖helper中的代码

  • test.py
from  helper.util_helper import sub_name
data_converted = data.map(lambda x: (sub_name(x[2][1]), 
                                     sub_name(x[1][1]), sub_name(x[2][1])))
  • 把helper文件夹下的代码压缩
cd /data/apps/modules/jupyter/
zip -r helper.zip helper/
  • 提交命令
 spark-submit --deploy-mode client  --driver-memory 2G --executor-memory 2G --executor-cores 3 --num-executors 3 --properties-file /etc/spark/conf/spark-defaults.conf --py-files ./helper.zip test.py

有其它模块的代码依赖,比如requests

  • test.py
def get_bd_res():
    import sys
#     return sys.path
    import requests
    url = "http://www.baidu.com"
    payload={
   }
    headers = {
   
      'Cookie': 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值