Flink的State概述

本文深入探讨Flink的State概念,包括Keyed State与Operator State的基本类型划分,Managed State与Raw State的组织形式,State Time-To-Live (TTL)的配置,Broadcast State模式,以及State的可查询性和定制化序列化实现。理解并掌握这些内容有助于更好地利用Flink的状态管理。
摘要由CSDN通过智能技术生成

前言


当我们经常在谈论一个Flink任务是否是有状态的,此时我们谈论的点其实就是Flink内部的State的概念。但是这里的State的概念已经不是单纯指我们平时所说的Event–>State这样的比较固定的概念,更确切地说,它是一种运行间的数据信息。这些状态数据在容错恢复及checkpoint时将起到很关键的作用。本文笔者来聊聊Flink State的相关内容,包括State的类型划分,State的序列化内容等等。

Flink的State类型


基本类型划分


在Flink中,按照基本类型,对State做了以下两类的划分:

  • Keyed State,和Key有关的状态类型,它只能被基于KeyedStream之上的操作,方法所使用。我们可以从逻辑上理解这种状态是一个并行度操作实例和一种Key的对应, <parallel-operator-instance, key>。
  • Operator State(或者non-keyed state),它是和Key无关的一种状态类型。相应地我们从逻辑上去理解这个概念,它相当于一个并行度实例,对应一份状态数据。因为这里没有涉及Key的概念,所以在并行度(扩/缩容)发生变化的时候,这里会有状态数据的重分布的处理。

组织形式划分


但是在这里还有一种按照组织形式的划分,也可以理解为按照runtime层面的划分,又可以分

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值