【发布时间】:2026-01-28 04:40:02
【问题描述】:
AWS Kinesis 提供了一种流窗口实施,有助于“分析在不一致时间到达的数据组”stagger windows。
这样的窗口实现特别强大,因为它确保窗口仅在收到第一个事件(由事件分组定义)时启动,并在固定时间后完成,从而减少了一个接一个地很快收到的事件数量, 最终出现在不同的窗口中。
Kinesis 似乎是一个快速简单的流实现选择的绝佳选择,但为了审查未来潜在的“锁定”,我们正在尝试了解如何在需要时使用 Kafka 流重新创建类似的功能.
Kafka streams 似乎支持以下窗口函数:
- 翻滚(对比Kinesis Tumbling)
- 跳跃(与无 Kinesis 实现相比)
- 滑动(相对于Kinesis Sliding)
- 会话(与?)
根据我们现有的研究,会话窗口可能是最接近交错的选项。然而,我们注意到,即使在该会话被认为“过期/发出”之后,如果迟到的事件到达,会话窗口仍然可以“更新”,并且在未来的“流时间”事件之前可能不会发出会话有记录吗?
因此,我想问一下交错窗口的最接近的实现/是否可能在 Kafka 中,以及需要注意哪些潜在的“陷阱”。
【问题讨论】:
标签: apache-kafka apache-kafka-streams amazon-kinesis