spark-on-yarn作业提交缓慢优化之spark jar包处理

本文解析了Spark on YARN方式下作业提交缓慢的原因,深入分析日志,指出未配置spark.yarn.jars或spark.yarn.archive参数导致的问题,并提供了解决方案,包括上传所有jar包至HDFS及在spark-default.conf中设置相应参数。

spark on yanr方式运行计算作业,发现作业提交缓慢,查看日志如下:


18/09/25 11:25:38 WARN yarn.Client: Neither spark.yarn.jars nor spark.yarn.archive is set, falling back to uploading libraries under SPARK_HOME.
18/09/25 11:25:51 INFO yarn.Client: Uploading resource file:/tmp/spark-293d2659-5df4-4445-8e6a-2d46103402e4/__spark_libs__6050322568575248936.zip -> hdfs://hadoop001:9000/user/hadoop/.sparkStaging/application_1537843134586_0005/__spark_libs__6050322568575248936.zip
18/09/25 11:26:04 INFO yarn.Client: Uploading resource file:/tmp/spark-293d2659-5df4-4445-8e6a-2d46103402e4/__spark_conf__938847757818885511.zip -> hdfs://hadoop001:9000/user/hadoop/.sparkStaging/application_1537843134586_0005/__spark_conf__.zip

从日志信息可以看到,

如果spark.yarn.archive 或者 spark.yarn.jars这两个参数都没有配置,spark就会把$SPARK_HOME/jars/所有的jar上传到分布式缓存中,大约耗时30s左右,造成提交缓慢。


解决办法:

1、将$SPARK_HOME/jars/下面的所有jar包上传到hdfs上

hadoop fs -mkdir -p /spark/jars/

hadoop fs -put /home/hadoop/app/spark-2.3.1-bin-2.6.0-cdh5.7.0/jars/*.jar /spark/jars/


2、spark-default.conf文件里面添加如下参数:

spark.yarn.jar                 hdfs://hadoop001:9000/spark/jars/*.jar


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29609890/viewspace-2214787/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29609890/viewspace-2214787/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值