首页 > 其他 > 详细

广播变量找不到

时间:2020-03-20 17:47:49      阅读:88      评论:0      收藏:0      [点我收藏+]

2020-03-13 14:15:21,954 ERROR ql.Driver: (SessionState.java:printError(1214)) [HiveServer2-Handler-Pool: Thread-5475990(SessionHandle=b20cac73-1b69-47af-a4f0-fab521b43a91)] - EXECUTION FAILED: Task MAPRED-SPARK error SparkException: [Error 1] Job aborted due to stage failure: Task 8 in stage 2910698.1 failed 4 times, most recent failure: Lost task 8.3 in stage 2910698.1 (TID 765270081, 172.28.184.21): java.io.FileNotFoundException: http://172.28.184.9:36260/broadcast_7479411

技术分享图片

默认4h(Dspark.cleaner.ttl)清理磁盘的broadcast,任务运行4h+之后,之前的broadcast被清理所以找不到

Dspark.cleaner.ttl.BROADCAST_FAST=1800 这个是半小时清理内存的broadcast,内存里面找不到,不会报错,会重新去磁盘拿,磁盘上要是还没有了就GG

 

EXTRA_EXECUTOR_OPTS也加上

技术分享图片

 

技术分享图片

数据量太大导致执行时间超过4小时,ttl默认清理了相关内存,导致中间变量找不到了

解决方法 1、减少数据量  2、修改相关配置参数,增大清理时间和超时时间,但是需要重启inceptor集群

相关sql语句看能不能再增加过滤条件以减少数据量,减少执行时间

 

广播变量找不到

原文:https://www.cnblogs.com/qfdy123/p/12533039.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!