【发布时间】:2019-04-10 03:19:32
【问题描述】:
我是 Flink 新手,需要有关方法的帮助。我有时间粒度为 5 分钟的事件流。我想通过使用过去 1 小时数据点的历史事件(即最后 12 点(5 分钟时间粒度))调用 rest API 来获取事件的元数据。
例如,事件的时间戳为 10:00、10:05、10:10、10:15 等 因此,如果我想获取时间戳为 11:00 的事件元数据,我将调用发送时间戳为 10:00、10:05、10:10、10:15 .. 10:55 的所有事件
我使用 TimeCharacteristic.EventTime 执行环境实现了该方法,并使用了 AssignerWithPeriodicWatermarks 来提取事件的时间戳和延迟 1 小时的水印。
为了获得前面的观点,我创建了一个 1 小时的滑动窗口和 5 分钟的滑动(假设 1 个事件将随窗口滑动)。我创建了 ProcessAllWindowFunction,收集了所有的窗口元素并调用了其余的 api。但是,当我打印窗口元素时,我会得到大约 400 个事件时间戳。
似乎没有正确创建窗口。不确定问题出在代码中还是我的方法中
【问题讨论】:
-
能贴出代码吗?
标签: apache-flink flink-streaming sliding-window