学习 Flink(五):状态

栏目: 数据库 · 发布时间: 7年前

内容简介:Flink 支持有状态的操作和用户方法。例如,窗口操作使用状态维护不断追加的聚合数据,sink 操作使用状态保证一致性提供 exactly-once 语义。Flink 状态主要分为两种:Flink 支持三种状态后端:

Flink 支持有状态的操作和用户方法。例如,窗口操作使用状态维护不断追加的聚合数据,sink 操作使用状态保证一致性提供 exactly-once 语义。

Flink 状态主要分为两种:

  • 操作状态
  • 键状态

Flink 支持三种状态后端:

  • 内存
  • 文件系统
  • RocksDB

操作状态

操作状态(Operator State),即每个操作状态绑定到一个并发操作实例上。

学习 Flink(五):状态

Flink 提供了以下操作状态:

  • Broadcast State: BroadcastState<K,V> 广播状态,存储在广播状态中的元素可以被所有的操作访问。

键状态

学习 Flink(五):状态

Flink 提供了以下键状态:

  • Value State: ValueState<T> 分区的单值状态。
  • Map State: MapState<UK,UV> 分区的键值状态。
  • List State: ListState<T> 分区的列表状态。
  • Reducing State: ReducingState<T> 每次调用 add(T) 添加新元素,会调用 ReduceFunction 进行聚合。传入类型和返回类型相同。
  • Aggregating State: AggregatingState<IN,OUT> 每次调用 add(T) 添加新元素,会调用 ReduceFunction 进行聚合。传入类型和返回类型可以不同。

状态后端

内存

适用场景:调试、无状态或可以容忍数据的丢失和重复。

文件系统

适用场景:普通状态、窗口、键值结构。

RocksDB

适用场景:超大状态、超长窗口、大型键值结构。

可查询的状态

TODO

TTL

TODO

参考


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web 2.0 Heroes

Web 2.0 Heroes

Bradley L. Jones / Wiley / 2008-04-14 / USD 24.99

Web 2.0 may be an elusive concept, but one thing is certain: using the Web as merely a means of retrieving and displaying information is history. Today?s Web is immediate, interactive, innovative. It ......一起来看看 《Web 2.0 Heroes》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具