Hello, We have a Flink pipeline where we are windowing our data after a keyBy. i.e. myStream.keyBy().window().process(MyIncrementalAggregation(), MyProcessFunction()).
I have two questions about the above line of code: 1) Does the state in the process window function qualify as KeyedState or OperatorState? If operator state, can we access KeyedState from the Process Window function? 2) We also have certain reference information that we want to share across all keys in the process window function. We are currently storing all that info in a Guava cache. We want to be able to rehydrate the guava cache at the beginning of each window by making an external rest call and clear the cache at the end of that respective window. How can we enforce this behaviour in Flink? Do I need to use a timerservice for this where the callback will be a window.maxtimestamp() or just clearing the cache in the clear method will do the trick? -- *Regards,Harshvardhan Agrawal*