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 包了。
本文来自博客园,作者:LoremMoon,转载请注明原文链接:https://www.cnblogs.com/hello-cnblogs/p/17344380.html