我有一个流-我想比较当前窗口和前一个窗口中的事件数。
这可以通过保持窗口中事件的数量不变来实现 globalState
做点什么链接:
class Foo [I,O] extends ProcessWindowFunction[I,O, String, TimeWindow] {
override def process(key: String, context: Context, elements: Iterable[I], out: Collector[O]): Unit = {
val state = context.globalState.getState(windowStateDescriptor)
if (state.value != null) {
if(state.value > elements.size) {
// do some out.collect
} else {
state.update(elements.size)
}
}
}
}
然而,我试图避免保持持久状态。有没有更好的更惯用的方法来实现这一点?
暂无答案!
目前还没有任何答案,快来回答吧!