分享

spark streaming并发低导致数据积压

ld512870 发表于 2016-9-8 17:09:47 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 23278
本帖最后由 ld512870 于 2016-9-8 17:13 编辑

spark streaming的某个DStream因为与外部交互,所以处理很慢,处理一条大约2s。这就导致整个流程都在等这个RDD处理完成之后才能继续下去,我寻思提高并行度来解决这个问题。设置了spark.default.parallelism,executor,core都加大了。但是没有效果。还是那种处理完一条在处理一条的感觉。。。这种怎么破?
另外,这个应该就是并行度这块的原因,因为同一份数据,我用storm去处理的时候,只要设置了高并发,完全可以实时处理完数据,不产生任何的积压。
但是用streaming的时候感觉设置的并发根本没用。就是那种一个线程在处理,处理完一条,然后处理下一条的感觉。。。所以都积压了。。。而且越来越多。

比如处理每个partition中的数据。这个过程设置成高并发,而不是一条完事处理下一条。这个真么设置?

已有(2)人评论

跳转到指定楼层
langke93 发表于 2016-9-8 18:17:33
优化下DStream

可以设置下阻塞间隔
参数spark.streaming.blockInterval ,默认的值是200毫秒。

更多优化参考
Spark之性能优化
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11547

希望对楼主有帮助

回复

使用道具 举报

zhuqitian 发表于 2016-9-10 09:12:18
对实时要求高还是storm可以动态设置并行度,sparkstream暂时不能做到这一点
回复

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条