开发者社区> 问答> 正文

Flink中保存state的数据结构的方法有哪些?

Flink中保存state的数据结构的方法有哪些?

展开
收起
游客d7m6sp6tv6n2q 2021-12-09 19:34:48 739 0
1 条回答
写回答
取消 提交回答
  • 1.ValueState:即类型为T的单值状态。这个状态与对应的key绑定,是最简单的状态了。它可以通过update方法更新状态值,通过value()方法获取状态值

    2.ListState:即key上的状态值为一个列表。可以通过add方法往列表中附加值;也可以通过get()方法返回一个Iterable来遍历状态值

    3.ReducingState:这种状态通过用户传入的reduceFunction,每次调用add方法添加值的时候,会调用reduceFunction,最后合并到一个单一的状态值

    4.MapState<UK, UV>:即状态值为一个map。用户通过put或putAll方法添加元素 需要注意的是,以上所述的State对象,仅仅用于与状态进行交互(更新、删除、清空等),而真正的状态值,有可能是存在内存、磁盘、或者其他分布式存储系统中。相当于我们只是持有了这个状态的句柄

    2021-12-09 19:35:48
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何使用Tair增强数据结构构建丰富在线实时场景 立即下载
Flink CDC Meetup PPT - 龚中强 立即下载
Apache Flink 流式应用中状态的数据结构定义升级 立即下载