没有聚合的流静态联接仍会导致火花状态累积

问题描述

我正在使用Spark结构化流(PySpark),使用MinHashLSHroxSimilarityJoin(在后台进行SortMergeJoin)将带有静态数据帧的Kafka流加入其中。

这些消息的大小和数量都很高,几个小时后会导致多个GB的状态。一段时间后,导致OOMerrors并使程序崩溃。

根据文档,流静态连接是无状态的,因此我希望随着时间的推移不会累积任何状态。在这种使用情况下,我们也对保留Kafka偏移量以外的任何状态都不感兴趣。

下图显示了几分钟后的状态大小,SortMergeJoin的左侧是静态框架,而右侧是Kafka流。在此过程中未添加水印或删除重复项。

有人对我如何减小这种状态的大小甚至完全摆脱它有想法吗?

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)