这篇文章将为大家详细讲解有关spark-on-yarn作业提交缓慢优化中的spark jar包处理是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
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-cdh6.7.0/jars/*.jar /spark/jars/
2、spark-default.conf文件里面添加如下参数:
spark.yarn.jar hdfs://hadoop001:9000/spark/jars/*.jar
关于spark-on-yarn作业提交缓慢优化中的spark jar包处理是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/222763.html