07_Flink之checkpoint和state
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了07_Flink之checkpoint和state相关的知识,希望对你有一定的参考价值。
参考技术A barrier携带者快照的id,快照的id在快照存放在最前面flink容错-checkpoint流程
第二个问题:停止数据处理,做完快照,广播屏障。
1、快照数据存储,不往下发?只发barrier,应该里面包含着数据才对。
2、一个算子存储做,那么计算是存储之前做,还是存储之后做。?
第三个问题:最下面那个到底对吗
state数据保存在java堆内存中,执行checkpoint的时候,会把state的快照数据保存到jobmanager的内存中 基于内存的state backend在生产环境下不建议使用。【因为怕丢失】
state数据保存在taskmanager的内存中,执行checkpoint的时候,会把state的快照数据保存到配置的文件系统中,可以使用hdfs等分布式文件系统。
基于RocksDB + FS
RocksDB跟上面的都略有不同,它会在本地文件系统中维护状态,state会直接写入本地rocksdb中。同时RocksDB需要配置一个远端的filesystem。
checkpoint与state之间的关系
checkpoint是一个动词,如果顺利的话,会产生一个名词。
state:流式计算中持久化的状态
state存放在local state backend。
在flink中,state可以分为这两种,一种是keyed State,一种是
并行,多个节点一起计算。
并发,一个节点,多个线程计算。
hello1永远只会到并发的task上面去。
不去keyby也能拿到它.
triggercheckpoint,当task收到所有barrier之后,会进行快照,再快照之前,将自己的输出继续传递barrier,并将自己的状态异步写入到持久化存储中。
我已经把快照做好,并且把元数据告诉你。
以上是关于07_Flink之checkpoint和state的主要内容,如果未能解决你的问题,请参考以下文章
Flink Checkpoint 和 Large State 调优
从0到1Flink的成长之路(二十)-Flink 高级特性之Checkpoint 配置方式