1
我想分享这个流:1,1,1,2,2,2,2,2,3,3,3,3,3,3,3,0,3,3,3,5,。 ..这些会话:如何与Apache Flink会话流?
1,1,1
2,2,2,2,2
3,3,3,3,3,3,3
0
3,3,3
5
我已经写CustomTrigger检测何时流元素从1到2改变(2到3,3到0等),然后触发触发器。但这不是解决方案,因为当我处理2的第一个元素并触发触发器时,窗口将是[1,1,1,2],但我需要触发1的最后一个元素上的触发器。
这里是我的onElement功能04-0030-03在我的自定义触发类:
override def onElement(element: Session, timestamp: Long, window: W, ctx: TriggerContext): TriggerResult = {
if (prevState == element.value) {
prevState = element.value
TriggerResult.CONTINUE
} else {
prevState = element.value
TriggerResult.FIRE
}
}
我怎样才能解决这个问题?