【发布时间】:2017-05-13 16:38:00
【问题描述】:
首先,我是流处理框架的新手。我想对其中一些进行基准测试,所以我从 Flink 开始。
对于我的用例,我需要将来自窗口 t 的事件与来自窗口 t-1 的事件进行比较,大小均为 15 分钟,然后进行一些聚合。
这是我的用例的简化版本:
我们将分析的事件视为表单的元组。 在窗口 1 中有:(A,1)、(B,2)、(C,3),在窗口 2 中有:(D,6) 和 (B,7)。 然后,我需要将当前窗口中的事件与前一个窗口中的事件进行比较,并保持这些事件验证以下条件:Win2(K) - Win1(K) > 5。因此,对于前面的示例,我们得到 (B,5)。 (如果有 2 个事件具有相同的键,我需要对它们求和。)
我真的不知道如何将两个窗口都保存在内存中。我正在考虑制作一个 15 分钟的滚动窗口(窗口 t)和一个滑动 15 分钟的 30 分钟滑动窗口,并对它们进行减法运算以计算窗口 t-1。
这是一个好的解决方案还是有更好的方法?
【问题讨论】:
标签: apache-flink flink-streaming