Hi,

I would like to write something that does something like a word count, and then 
emits only the 10 highest counts for that window. Logically, I would want to do 
something like:

stream.timeWindow(Time.of(1, TimeUnit.MINUTES), Time.of(5, 
TimeUnit.SECONDS)).sum(2).apply(getTopK(10))

However, the window context is lost after I do the sum aggregation. Is there a 
straightforward way to express this logic in Flink 1.0? One way I can think of 
is to have a complex function in apply() that has state, but I would like to 
know if there is something a little cleaner than that.

Thanks,
Kanak                                     

Reply via email to