两个连续窗口之间的差异

时间:2019-08-22 14:53:43

标签: apache-kafka-streams

我有一个Kafka-stream应用程序,该应用程序计算我们在我们网站上出售的每种产品的印象数(product_id是事件的关键)。 我使用一个跳频窗口,其中包含1小时的窗口和10分钟的“跳频”。我还使用了抑制功能,因此在每个窗口的末尾每个键发送1个聚合。

我的问题是- 假设“ product-1”在[1:00,2:00)之间获得X次展示,但在[1:10,2:10)窗口中未获得任何展示。我的Kafka-streams应用程序将针对“产品1”发布的最后一条消息是[1:00,2:00)窗口末尾的“ X次展示”。此状态将永远停留(在使用此聚合数据的客户端上),直到“ product-1”在将来某个地方获得印象并发送新的聚合事件为止。

我想在[1:10,2:10)末尾发送一条消息,说“产品1没有展示”。如果我们要缩小,我想在每个窗口的末尾找到当前窗口的键与上一个窗口之间的差异。这样,我可以为那些产品密钥发送“重置”事件。

如果我能得到一个指示,即窗口已关闭并且所有聚合结果都已发送,则可以计算出此差异。

有人遇到类似的问题吗?

0 个答案:

没有答案
相关问题