GC overhead limit exceeded : Spark
来源:互联网 发布:java框架源码 编辑:程序博客网 时间:2024/05/29 09:55
我在运行Spark程序的时候报错
java.lang.OutOfMemoryError:GC overhead limit exceeded
伴随着通常有:
java.lang.OutOfMemoryError:Java heap spaceorg.apache.spark.shuffle.FetchFailedException:Failed to connect to ...
这是因为executor的内存不足,导致GC杀死一些任务
登录 http://Master:8080会看到
可以看到在这个应用了,每个节点只用到了512MB,这是spark程序默认的,解决这个问题只要设置VM Options中的spark.executor.memory属性即可。
比如用的IDEA,在Run configuration里设置VM Options:
-Dspark.executor.memory=4g
当然,executor.memory的大小肯定要小于节点的内存大小,不然这个参数设置毫无意义。而节点内存的大小你可以通过登录http://Master:8080(上图)中Workers信息里面看。
若你增加了实际内存,想修改worker内存的值,则在${SPARK_HOME}/conf/spark-env.sh里面修改:
export SPARK_WORKER_MEMORY=8gexport SPARK_EXECUTOR_MEMORY=8gexport SPARK_DAEMON_MEMORY=8g
这里其实是各种模式下都设置了,可以根据实际情况参照该文档注释进行个性化设置。
重启Spark后生效,可以登录webui(http://Master:8080)去查看更改成功了没。
上述方法其实治标不治本,更有效的方法当然是优化代码,如某个RDD不用了,可以把它unpersist,诸如此类。
1 0
- GC overhead limit exceeded : Spark
- spark-OutOfMemory:GC overhead limit exceeded 解决
- spark OutOfMemoryError (GC overhead limit exceeded)
- GC overhead limit exceeded
- GC overhead limit exceeded
- GC overhead limit exceeded
- spark出现GC overhead limit exceeded和java heap space
- spark出现GC overhead limit exceeded和java heap space
- spark-OutOfMemory:GC overhead limit exceeded 解决,timelimitexceeded
- Spark错误异常-sparkMaster GC overhead limit exceeded
- gc overhead limit exceeded eclipse
- gc overhead limit exceeded解决方案
- Android gc overhead limit exceeded
- OutOfMemoryError: GC overhead limit exceeded
- .OutOfMemoryError: GC overhead limit exceeded
- OutOfMemoryError: GC overhead limit exceeded
- OutOfMemoryError GC overhead limit exceeded
- java.lang.OutOfMemoryError: GC overhead limit exceeded
- IDE工具 - VS2012中NuGet安装第三方库
- JavaScript DOM 扩展
- IOS开发-自动布局之autoresizingMask使用详解(Storyboard&Code)
- 广播工具箱
- 区间求和Ⅱ
- GC overhead limit exceeded : Spark
- 浅析Android系统属性SystemProperties
- 一个经典例子让你彻彻底底理解java回调机制
- Notification(通知)的使用简介
- 尺寸工具箱DimenUtils
- curl抓取
- CDH离线安装成功,Mark下,20151012
- iOS图片处理,截图,缩放,存储
- 教你如何调用百度编辑器ueditor的上传图片、上传文件等模块