flink 是通过barrier 和checkpoint 机制保证exactly-once,那之前有个问题一直困扰,在2次checkpoint之间的数据,岂不是会被重复消费?
确实是这样,所以flink 引入了两阶段提交,在两次checkpoint之间的数据先预提交,而不会真正sink,如果重启后重复消费也不会有问题。
flink 是通过barrier 和checkpoint 机制保证exactly-once,那之前有个问题一直困扰,在2次checkpoint之间的数据,岂不是会被重复消费?
确实是这样,所以flink 引入了两阶段提交,在两次checkpoint之间的数据先预提交,而不会真正sink,如果重启后重复消费也不会有问题。