问题
spark sql 执行多表join,executor 退出,报错Container killed on request. Exit code is 137。
问题分析
137错误是内存OOM的报错,对于这种情况应该增加executor的内存,或者减少executor的task并发数。
解决
1、增加driver 或者 executor的内存
编辑 spark-defaults.conf 配置
spark.executor.memory 10g
spark.driver.memory 10g
或者
spark-submit --executor-memory 10g --driver-memory 10g …
2、减少executor的核数
编辑spark-defaults.conf配置
spark.executor.cores 1
或者
spark-submit --executor-cores 1 …