微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spark Streaming接收器仅处理一条记录

如何解决Spark Streaming接收器仅处理一条记录

我在Spark Streaming 2.2.1作业中有16个接收器。一段时间后,一些接收器正在处理越来越少的记录,最终仅每秒处理一个记录。该行为可以在屏幕截图上看到:

enter image description here

虽然我知道根本原因很难发现而且不明显,但是有什么方法可以进一步调试此问题?目前,我不知道从哪里开始挖掘。可能与背压有关吗?

火花流媒体属性

<h4><img style="border: 1px solid black; align: right;" title="" src="sys_attachment.do?sys_id=00ee33cbdb1b9c507261e03cd396190b" alt="" width="204" align="right" border="1" hspace="" vspace="" /></h4>
<h4><strong>4. Entrez votre mot de passe.</strong></h4>
<ul style="list-style-type: disc; list-style-position: inside;">
    <li>Puis,cliquez sur "Suivant".</li>
</ul>

解决方法

似乎问题在运行30分钟后开始显现。我认为背压可能是一个原因。根据此article

激活背压后,驱动程序将监视当前的批处理调度延迟和处理时间,并动态调整接收器的最大速率。可以在接收器日志中验证新速率限制的通信:

2016-12-06 08:27:02,572信息org.apache.spark.streaming.receiver.ReceiverSupervisorImpl收到了新的速率限制:51。

这是我建议您尝试的方法:

  1. 检查接收器日志以查看是否触发了backpress。
  2. 检查您的流接收器,看是否有任何错误。
  3. 检查YARN资源管理器的资源利用率。
  4. 调整Spark参数以查看是否有区别。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。