apache-flink - Flink 中固定时间的会话窗口
问题描述
我有一个用例,我不希望每个键的窗口随着每个元素而不断增长。要求是每个键都有一个新窗口,该窗口从第一个元素开始,正好在 1 分钟后结束。
解决方案
我假设您的意图是收集在第一个事件发生后一分钟内到达相同键的所有事件,然后在该分钟结束时产生一些结果。
这可以用一个非常简单的方式来实现KeyedProcessFunction
。您可以维护ListState
每个键,并将到达的记录附加到列表中。您可以使用计时器来触发您的窗口结束逻辑。
有关更多信息,请参阅Flink 文档中有关流程功能的教程。
推荐阅读
- sql - 来自微软查询
- excel - 提高循环内 if else 条件的性能
- javascript - 尝试在以编程方式添加的元素上使用 getBoundingClientRect() 返回宽度和高度 0
- spring-batch - 春季批次中的分流如何工作?
- node.js - 如何在没有 CORS 预检的情况下向 Stripe 端点发出 POST 请求
- android - 我如何在这个 Unity 示例游戏(Trash Dash)中放置视频?
- c - 将特定结构传递给 C 中的函数
- javascript - 单击提交按钮后如何保持下拉列表的选定值
- apache-spark - 在 PySpark 中将 Parquet 文件与不同列合并
- javascript - Jest spyOn 方法