学习 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

参考


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

查看所有标签

猜你喜欢:

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

操作系统基础教程

操作系统基础教程

戴维斯 / 第1版 (2006年7月1日) / 2006-7 / 34.0

这是一本关于操作系统基本原理的教科书,其最大特点就是从操作系统的分层概念出发,深入浅出地介绍了操作系统的基本概念和基本框架。本书可以作为高等院校非计算机专业相关课程的教材或参考书,也适合具有高中以上数学基础的计算机用户自学,还可以作为社会上计算机培训机构的教材。对所有想了解计算机操作系统,但又不需要或不打算深入学习其理论和实现细节的读者来说,本书是一本极具价值的入门指导书。一起来看看 《操作系统基础教程》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

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

HEX CMYK 互转工具