1. Flink状态后端的类型:

MemoryStateBackend

FsStateBackend

RocksDBStateBackend

2. 各状态后端对比:

2.1 MemoryStateBackend:

  如果没有配置,默认使用MemoryStateBackend,此时Flink的状态会保存在TaskManager的内存中,而checkpoint会保存在JobManager的内存中。

MemoryStateBackend可以通过配置来使用异步快照,通过异步快照可以避免阻塞管道。默认开启异步,也可以通过MemoryStateBackend的构造函数配置进行关闭。

new MemoryStateBackend(MAX_NEW_STATE_SIZE,false);

  MemoryStateBackend的限制:

    每个独立的状态(state)默认限制大小为5MB,可以通过构造函数增加容量;

    状态的大小能超过akka的framesize大小

    聚合状态(aggregate state)必须放入JobManager的内存

  MemoryStateBackend的适用场景:

    本地调试

    Flink任务状态数据量较小的场景

2.2 FsStateBackend

  FsStateBackend通过配置文件系统路径来进行设置,例如:“hdfs://namenode:8020/flink/checkpoints”或者"file:///date/flink/checkpoints".

  FsStateBackend将动态数据保存在taskmanager的内存中,通过checkpoint机制,将状态快照写入配置好的文件系统或者目录中。最小元数据保存在jobManager的内存中,另外FsStateBackend通过配置一个fileStateThreshold阈值,小于该值时state存储到metadata中而非文件中。

  FsStateBackend默认通过配置来使用异步快照,避免阻塞管道,当然也可以通过

Flink状态后端的对比及机制的更多相关文章

  1. 关于 Flink 状态与容错机制

    Flink 作为新一代基于事件流的.真正意义上的流批一体的大数据处理引擎,正在逐渐得到广大开发者们的青睐.就从我自身的视角看,最近也是在数据团队把一些原本由 Flume.SparkStreaming. ...

  2. 总结Flink状态管理和容错机制

    本文来自8月11日在北京举行的 Flink Meetup会议,分享来自于施晓罡,目前在阿里大数据团队部从事Blink方面的研发,现在主要负责Blink状态管理和容错相关技术的研发.   本文主要内容如 ...

  3. Flink状态管理和容错机制介绍

    本文主要内容如下: 有状态的流数据处理: Flink中的状态接口: 状态管理和容错机制实现: 阿里相关工作介绍: 一.有状态的流数据处理# 1.1.什么是有状态的计算# 计算任务的结果不仅仅依赖于输入 ...

  4. Flink State Backends (状态后端)

    State Backends 的作用 有状态的流计算是Flink的一大特点,状态本质上是数据,数据是需要维护的,例如数据库就是维护数据的一种解决方案.State Backends 的作用就是用来维护S ...

  5. Flink状态管理与状态一致性(长文)

    目录 一.前言 二.状态类型 2.1.Keyed State 2.2.Operator State 三.状态横向扩展 四.检查点机制 4.1.开启检查点 (checkpoint) 4.2.保存点机制 ...

  6. 大数据计算引擎之Flink Flink状态管理和容错

    这里将介绍Flink对有状态计算的支持,其中包括状态计算和无状态计算的区别,以及在Flink中支持的不同状态类型,分别有 Keyed State 和 Operator State .另外针对状态数据的 ...

  7. 第09讲:Flink 状态与容错

    Flink系列文章 第01讲:Flink 的应用场景和架构模型 第02讲:Flink 入门程序 WordCount 和 SQL 实现 第03讲:Flink 的编程模型与其他框架比较 第04讲:Flin ...

  8. Flink状态专题:keyed state和Operator state

            众所周知,flink是有状态的计算.所以学习flink不可不知状态.         正好最近公司有个需求,要用到flink的状态计算,需求是这样的,收集数据库新增的数据.       ...

  9. 一文搞懂 Flink 网络流控与反压机制

    https://www.jianshu.com/p/2779e73abcb8 看完本文,你能get到以下知识 Flink 流处理为什么需要网络流控? Flink V1.5 版之前网络流控介绍 Flin ...

  10. 阿里蒋晓伟谈计算引擎Flink和Spark的对比

    本文整理自云栖社区之前对阿里搜索事业部资深搜索专家蒋晓伟老师的一次采访,蒋晓伟老师,认真而严谨.在加入阿里之前,他曾就职于西雅图的脸书,负责过调度系统,Timeline Infra和Messenger ...

随机推荐

  1. jmeter分布式配置及问题记录

    环境配置:   假设有2台电脑,主机(10.1.5.219),从机(10.1.5.212) 主机:jdk.jmeter.脚本.脚本所需的文件(需配置jdk和jmeter的环境变量) 从机:jdk.jm ...

  2. Systrace学习记录

    「置顶」Android 性能优化必知必会[大量文章] https://androidperformance.com/2018/05/07/Android-performance-optimizatio ...

  3. usb 2.0 high speed resetting signaling.

  4. IQuerable展示数据时出现重复【View在类定义的时候没有将多主键给标识出来】

    废话少说,直接上图! 从上面可以看到我有一些数据是重复了,是整条记录都重复了,但是我看到数据库里面的View数据是没有重复的,那就说明问题:"可能是View在类定义的时候没有将多主键给标识出 ...

  5. yolov5查看训练日志图片和直方图(包括稀疏训练bn直方图)

    0.D:\code\codePy\yolov5-6.1\runs\train\exp25文件夹下有 events.out.tfevents.1675823043.DESKTOP-ACC9FL4.521 ...

  6. mybatis-关联查询3-自关联查询

    一对多的方式处理 查询指定栏目的所有子孙栏目 查询指定栏目及其所有子孙栏目 多对 一的方式处理

  7. 微信小程序级联选择器省市区选择器部分安卓手机兼容的问题:无法只选省份,必须选择到市

    代码片段: 1 <view class="item"> 2 <view class="i-name"><text class=&q ...

  8. P标签内容过长以省略号代替

    p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

  9. python中的链表推导式

    python中的链表推导式 博客分类: Python Python  num=[1,2,3] myvec=[[x,x*2] for x in num] #嵌套一个链表,格式为一个数和他的平方 prin ...

  10. 单个表空间文件个数达到上限 ORA-01686

    # 问题概述因在oracle数据库表空间管理中的时候 报 ORA-01686: max # files (1023) reached for the tablespace GPRS SQL> a ...