Hi:
The document said Flink can guarantee processing each
tuple exactly-once, but I can not understand how it works.
For example, In Fig 1, C is running between snapshot n-1 and snapshot n(snapshot n hasn’t been generated). After snapshot n-1, C has processed tuple
x1, x2, x3 and already outputted to user, then C failed and it recoveries from snapshot n-1. In my opinion, x1, x2, x3 will be processed and outputted to user again. My question is how Flink guarantee x1,x2,x3 are processed and outputted to user only once?
Fig 1.
Thanks for answing.
Free forum by Nabble | Edit this page |