flink--state状态管理

前提:

1 flink state分为三种,1)operator state是跟算子关联的,粒度是task,即便相同的算子的其他并行的task也不能互相访问各自的状态。 2)keyed state是跟key stream关联的。粒度是key,相同的task不同key的数据状态不共享,只有相同key才可以共享状态。, 3)broadcast state, 分为批Set的广播状态和流stream的流合并,一个广播流,一个事实流。

当Flink左右从checkpoint恢复,或者从savepoint中重启的时候,就回涉及到状态的重新分配,尤其是当并行度发生改变的时候。

Operator State Redistribute

当operator改变并行度的时候(Rescale),会触发状态的Redistribute,即Operator State里的数据会重新分配到Operator的Task实例。这里有三种方式,举例说明平行度由3改为2

1 这个是普通的ListState, 原先所有State中的元素均匀划分给新的Task

2 这个是UnionList State,所有的State中的元素全部分配给新的Task

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值