背景
在flink中进行状态的维护和管理应该是我们经常做的事情,但是有些同学认为名称一样的状态在不同算子之间的状态是同一个,事实是这样吗?
flink状态在保存点中的存放示意图
事实上,每个状态都归属于对应的算子,也就是只要算子不一样,即使底下的状态名称相同,他们也是完全不同的两个状态,示意图如下所示:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4e3299958539421c4ab5fb7f0e9555cc.png)
我们对flink进行状态管理时需要注意,flink中没有所谓的跨算子共享的状态,比如如果两个算子想要同一份配置的数据,那么可以两个算子都维护一份自己的广播状态,或者这份配置就是从DB获取,这样才能保证两个算子拿到的都是同一份数据