Spark低版本适配Celeborn

Spark-3.5版本以下使用Celeborn时,无法使用动态资源,对于低版本的Spark,Celeborn提供了patch。各版本patch如下

https://github.com/apache/incubator-celeborn/tree/main/assets/spark-patch

下载patch,这里下载spark-3版本,将Celeborn_Dynamic_Allocation_spark3_3.patch放至spark-3.3.1源码目录下,和core同一层级,执行如下命令代码合并

patch -p1 < Celeborn_Dynamic_Allocation_spark3_3.patch

重新编译spark源码,并生成spark tgz包

./dev/make-distribution.sh --tgz --name custom-spark -Phadoop-3.2 -Dhadoop.version=3.2.1 \
 -Phive-3.2.1 -Phive-thriftserver -Pyarn -DskipTests

提交任务

 /opt/apps/SPARK3/spark-3.3.1-bin-custom-spark/bin/spark-submit \
--conf spark.shuffle.manager=org.apache.spark.shuffle.celeborn.SparkShuffleManager \
--conf spark.celeborn.client.spark.shuffle.writer=hash \
--conf spark.serializer=org.apache.spark.serializer.KryoSerializer \
--conf spark.celeborn.master.endpoints=celeborn-master:9097 \
--conf spark.sql.adaptive.enabled=true \
--conf spark.sql.adaptive.skewJoin.enabled=false \
--conf spark.celeborn.client.push.replicate.enabled=false \
--conf spark.dynamicAllocation.enabled=true \
--conf spark.shuffle.service.enabled=false \
--conf spark.celeborn.storage.hdfs.dir=hdfs://hdfs-cluster/celeborn \
--conf spark.dynamicAllocation.initialExecutors=10 \
--conf spark.dynamicAllocation.minExecutors=0 \
--conf spark.dynamicAllocation.maxExecutors=10 \
--conf spark.dynamicAllocation.executorIdleTimeout=30s \
--queue dataAnalysis \
--class com.rs.dsp.etl.jobs.CommonUserTrackSessionDetailD \
--master yarn \
--deploy-mode cluster \
--driver-memory 4GB \
--executor-memory 15G \
--executor-cores 2 \
/root/rs-dsp-spark-1.0-SNAPSHOT-jar-with-dependencies.jar

相关推荐

  1. Spark版本Celeborn

    2023-12-08 00:12:03       61 阅读
  2. 代码如何小程序开发

    2023-12-08 00:12:03       38 阅读
  3. DCNv2安装pytorch各个版本

    2023-12-08 00:12:03       60 阅读
  4. Android所有版本的存储权限

    2023-12-08 00:12:03       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-08 00:12:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-08 00:12:03       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-08 00:12:03       87 阅读
  4. Python语言-面向对象

    2023-12-08 00:12:03       96 阅读

热门阅读

  1. 【编程技术】CUDA TencoreCore编程实例说明

    2023-12-08 00:12:03       56 阅读
  2. opencv常用函数表

    2023-12-08 00:12:03       53 阅读
  3. git 提交文件过大 解决办法

    2023-12-08 00:12:03       52 阅读
  4. fork使用git可视化管理工具

    2023-12-08 00:12:03       52 阅读
  5. 计算机网络——习题

    2023-12-08 00:12:03       47 阅读
  6. QT字体不同

    2023-12-08 00:12:03       67 阅读
  7. 2.面向对象编程风格

    2023-12-08 00:12:03       49 阅读
  8. 在Python中,*f和**f是用于解包参数的语法

    2023-12-08 00:12:03       60 阅读
  9. 详细学习Pyqt5中的2种弹簧

    2023-12-08 00:12:03       44 阅读