分享

spark streaming 涨内存

邓立辉 发表于 2016-4-26 09:36:31 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 7402
新写了个streaming的app,发现每次处理数据的时候内存都会涨,涨完不掉,多处理几次就gc就慢了,会卡住。
我试着对每个rdd都调用unpresist(ture),把大的变量都值null,但是内存还是不降。
这个app和之前写的app主要差别:有两步是 shuffle write 200多M, 然后在shuffle read 200多M。之前app shuffle都在几十M左右

已有(2)人评论

跳转到指定楼层
atsky123 发表于 2016-4-26 21:34:45
跟下面因素可能有关系。
1.垃圾回收器
2.rdd不用的可以释放
3.有些数据可以持久化到硬盘
回复

使用道具 举报

邓立辉 发表于 2016-4-26 21:40:59
atsky123 发表于 2016-4-26 21:34
跟下面因素可能有关系。
1.垃圾回收器
2.rdd不用的可以释放

1、我的处理逻辑很简单,一共就用了5个rdd,在输出结果后我都调用unpersist。
2、我每次处理的数据也不是很大,内存完全容的下,所有没有存到磁盘
3、我很怀疑是垃圾回收的问题,我把内存由8g改到4g,gc时间反而降低了很多
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条