Hi Chirag, Thank for your reply! I found a provided ContinuousEventTimeTrigger should be worked in my situation. Most examples are based on Table API like ‘ds.keyBy(0).window().trigger(MyTrigger.of())…’, But how to apply the trigger to a pure Flink SQL Application ?
> 在 2018年3月12日,下午5:20,Chirag Dewan <chirag.dewa...@yahoo.in> 写道: > > Hi LiYue, > > This should help : Apache Flink 1.5-SNAPSHOT Documentation: Windows > <https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/operators/windows.html#triggers> > > Apache Flink 1.5-SNAPSHOT Documentation: Windows > > <https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/operators/windows.html#triggers> > > > > So basically you need to register a processing time trigger at every 10 > minutes and on callback, you can FIRE the window result like this: > > @Override > public TriggerResult onProcessingTime(long time, TimeWindow window, > TriggerContext ctx) throws Exception { > // schedule next timer > ctx.registerProcessingTimeTimer(System.currentTimeMillis() + 1000L); > return TriggerResult.FIRE; > } > > > I hope it helps. > > Chirag > > On Monday, 12 March, 2018, 2:10:25 PM IST, 李玥 <liyue2...@gmail.com> wrote: > > > Hi,team > I’m working on a event-time based aggregation application with flink SQL. > Is there any way to keep sinking partial aggregation result BEFORE time > window closed? > For example, My SQL: > select … > from my_table > GROUP BY TUMBLE(`timestamp`, INTERVAL '1’ DAY),other_column; > Usually, Flink sink agg result after time-window closed, Is there any way to > keep sinking TODAY’s partial aggregation result every 10 miniutes so we can > see today’s performance on my chart. > > Thanks! > LiYue >