I still need to get into the AsyncWaitOperator, but after taking a look at the Async I/O API, it seems that the normal use case is when you expect a result for each element in the input stream, so you register a callback together with a timeout for each input element. This is not exactly what my use case requires. In particular, when I send an event to the third party library, I might get a result...or not. The library is used for detecting certain patterns, so it is not as when you are querying a database, where you expect a result within a given time frame for each input element. In my case, it is more the other way around, most of the time you will not be expecting any outcome (think of anomaly detection). What I need is a way to collect the result (if any) from my third party library in my ProcessFunction, knowing that these outcomes will be exceptional compared with the cardinality of the input stream. After giving some extra thoughts, I don't know if the Async I/O pattern really suits my needs...
-- Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/