在EMR上跑spark任务,cluster+yarn。在补数据的时候,就是把主函数,根据日期通过for循环补充数据,一次性补充了2个月的数据。会不定时的出现重试的现象,例如我从8月份补充到10月份,程序跑到8月15号,进行16号的任务是开始重试,又从8.1号开始执行。
追踪EMR监控日志,会出现类似AM超出物理内存,被kill掉的日志。当AM被kill掉后,spark重试次数默认是2,所以会出现重试的情况。
通过日志发现driver的内存大小是1.4g,所以调整了下driver的大小,在spark-submit提交任务是,添加设置driver的内存大小,--driver-memory 14g。调整后补充数据没有出现重试的情况