spark-sql 堆外内存溢出
运行执行spark-sql 脚本文件,爆出对堆外内存溢出 GC overhead limit execeeded
错误如下图,先区分发生异常是executor端还是driver端,我遇到的问题是driver端,因为最后数据导出生成文件,数据会在driver端收集结果集。调节方式有两种,第一种正大driver-memory值,堆外内存计算公式默认是max(0.1*driver-memory ,384M),(executory的的对外内存计算公式也是一样);
第二种是调整参数(单位是M)
driver端是spark.yarn.driver.memoryOverhead=2048
executor端是:spark.yarn.executor.memoryOverhead