然后我们再来看,flink中的状态一致性,可以看倒有上面这些
状态一致性,首先状态指的是每个算子为了,保证数据的算子计算,正确处理,故障恢复,保存检查点等,记录的状态数据,比如sum算子,就需要记住,当前已经加和的这个状态值.
然后一致性指的是,如果出现了问题要恢复,那么恢复以后和恢复之前的结果应该是一致的,数据
不能多不能少,处理以后的结果也是正确的.
\
然后我们再看这里的状态一致性分类:
这里AT-MOST-ONCE 最多处理一次,就是故障的时候,什么都不干或者处理一次,这样就是,无法保证
数据的正确性,但是,可以保证性能比较好,跟udp传输视频一样,可以丢数据,但是只要速度快就可以了
AT-LEAST-ONCE 至少一次,是故障出现以后,要处理至少一次,这样可以保证数据的正确性,
但,需要额外处理很多东西.
EXACTLY-ONCE是精确处理一次,是处理一次就要处理好,故障恢复的时候处理一次,就可以把
数据从原来出故障的状态中恢复,这个是最困难的,需要考虑的问题很多.