Spark提交任务时不再上传$SPARK_HOME$/jars/下的jar包配置

背景

你是否在通过spark-submit提交任务时,看见如下这样的字样呢?

每次我们在提交任务时都会要上传 SPARK_HOME$/jars/ 下的 jar 包,尽管这些jar包我们一般不会修改,它也会上传,这无疑会极大地增加我们spark任务的上传等待时间,从而增加spark的作业时间。那我们可以配置不让它每次都上传吗?哎,你猜对了,下面就来掩饰这种方式。

开始吧

声明:我使用的hadoop版本是3.1.3,spark版本是3.0.0,如果你跟我下面这样配置了后没效果,有可能是版本的问题哦,我只是在我这个版本上测试过的。

打包

\(SPARK_HOME\)/jars/ 下的 jar 包打成一个 zip 包:

cd $SPARK_HOME$/jars/
zip spark_libs.zip *.jar
mv spark_libs.zip /home/luyue/

上传

\(SPARK_HOME\)/jars/ 目录下,执行:

hdfs dfs -put spark_libs.zip /spark-yarn/jars/

如果hdfs目录不存在,记得要先创建哦。

修改配置文件

进入到 $SPARK_HOME$/conf/ 目录下,编辑 spark-defaults.conf 文件:

# 不要每次都上传$SPARK_HOME$/jars/ 的jar包
spark.yarn.archive hdfs:///spark-yarn/jars/spark_libs.zip

测试


从结果中可以看到这次就没再上传 $SPARK_HOME$/jars/ 下的 jar 包了。

posted @ 2023-04-22 22:55  LoremMoon  阅读(72)  评论(0编辑  收藏  举报