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
}
}
我怎樣才能解決這個問題?