大数据全系列 教程
1869个小节阅读:467.1k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
状态数据可以维系在本地存储中,这里的存储可以是 Flink 的堆内存或者堆外内存,也可以借助第三方的存储介质,例如:Flink中已经实现的RocksDB,当然用户也可以自己实现相应的缓存系统去存储状态信息。那么它是以什么样的结构被存储的呢?
状态计算其实就是需要考虑历史数据,而历史数据需要搞个地方存储起来。Flink为了方便不同分类的State的存储和管理,提供以下保存State的数据结构。
MapState<UK,UV>
:即状态值为一个map
ValueState<T>
:类型为T的单值状态
ListState<T>
:key上的状态值为一个列表
BroadcastState
:具有Broadcast流的特殊属性
实时效果反馈
1. 以下选项中关于Flink状态相关接口的描述错误的是?
A ValueState<T>
:类型为T的单值状态。每个值都对应到当前输入数据的key,因此算子接收 到的每个key都可能对应一个值。
B ListState<T>
:只能表示key上的状态值为一个列表。
C MapState<UK,UV>
:即状态值为一个map,维护了一个映射列表,可以添加键值对到状态 中,也可以获得反映当前所有映射的迭代器。
D Broadcast State
:具有Broadcast流的特殊属性,类似批处理中广播变量:将小表数据广播 到TaskManager内存,被Slot中运行Task任务使用。
答案:
1=>B 也可以用于保存 Operator State。