美文网首页
flink状态和容错

flink状态和容错

作者: 傻疯子 | 来源:发表于2022-01-09 23:51 被阅读0次

flink是有状态的计算,可以存储一些中间过程和结果在内部存储里。

状态有三种存储方案MemoryStateBackend、FsStateBackend、 RocksDBStateBackend。

其中MemoryStateBackend等价于新版本的HashMapStateBackend 和 JobManagerCheckpointStorage。
FsStateBackend等价于新版本的HashMapStateBackend和FileSystemCheckpointStorage。
RocksDBStateBackend等价于新版本的EmbeddedRocksDBStateBackend和FileSystemCheckpointStorage。

MemoryStateBackend下,state数据保存在java堆内存中,执行checkpoint的时候,会把state的快照数据保存到jobmanager的内存中。

FsStateBackend下state数据保存在taskmanager的内存中,执行checkpoint的时候,会把state的快照数据保存到配置的文件系统中。

RocksDBStateBackend存储方案下它会在本地文件系统中维护状态,state会直接写入本地rocksdb中。同时它需要配置一个远端的filesystem uri(一般是HDFS),在做checkpoint的时候,会把本地的数据直接复制到filesystem中,fail over的时候从filesystem中恢复到本地。

通过checkpoint机制。checkpoint是应用状态的一个一致性副本,包括了输入的读取位点。
flink通过检查点加载应用状态来恢复,并从恢复的读取位点继续处理。检查点存储在内部,定期做checkpoint的持久化,存在分布式文件系统中,如果发生故障就从最近checkpoint节点恢复。

checkpoint基本配置

// 指定Checkpoint间隔时间
• StreamExecutionEnvironment enableCheckpointing(long interval)
// 指定Checkpoint间隔时间以及CheckpointingMode(EXACTLY_ONCE ,AT_LEAST_ONCE)
• StreamExecutionEnvironment enableCheckpointing(long interval,
CheckpointingMode mode)
// 指定是否强制在迭代作业中执行Checkpoint(@Deprecated )
• StreamExecutionEnvironment enableCheckpointing(long interval,
CheckpointingMode mode, boolean force)
// 默认Checkpoint Interval 为500 ms (@Deprecated )
• StreamExecutionEnvironment enableCheckpointing()

Savapoint用户可以手动出发并从Savapoint节点恢复。

Savapoint客户端命令

触发 Savepoint
$ bin/flink savepoint :jobId [:targetDirectory]
使用 YARN 触发 Savepoint
$ bin/flink savepoint :jobId [:targetDirectory] -yid :yarnAppId
使用 Savepoint 取消作业
$ bin/flink cancel -s [:targetDirectory] :jobId
从 Savepoint 恢复
$ bin/flink run -s :savepointPath [:runArgs]
跳过无法映射的状态恢复
$ bin/flink run -s :savepointPath -n [:runArgs]
删除 Savepoint
$ bin/flink savepoint -d :savepointPath

相关文章

  • flink状态和容错

    flink是有状态的计算,可以存储一些中间过程和结果在内部存储里。 状态有三种存储方案MemoryStateBac...

  • flink状态管理和容错

    一、有状态计算 在flink的结构体系当中,有状态的计算可以说是flink非常重要的特性之一了。有状态的计算是指在...

  • flink状态管理和容错

    有状态计算 无状态计算实现的复杂度相对较低,实现起来较容易,但是无法完成提交的比较复杂的业务场景。 用户想要实现c...

  • 译:Flink ---状态和容错

    Flink 1.7 Google翻译 有状态函数和运算符在各个元素/事件的处理中存储数据,使状态成为任何类型的更精...

  • flink状态容错

    什么是State(状态)? 某task/operator在某时刻的一个中间结果 快照(shapshot) 在fli...

  • Flink检查点机制与状态管理

    1 检查点机制 1.1 CheckPoints 为了使 Flink 的状态具有良好的容错性,Flink 提供了检查...

  • Flink状态管理和容错机制

    Apache Flink® — Stateful Computations over Data Streams(数...

  • Checkpoints

    原文链接 概述 Checkpoint通过允许从状态和相应流的位置进行恢复,从而使Flink中的状态具备容错能力,从...

  • Flink状态与容错

    一致性检查点 1.什么是一致性检查点 Flink故障恢复机制的核心,就是应用的一致性检查点。有状态应用的一致性检查...

  • Flink容错机制-双十一神话的安全保障

    Flink容错机制以及Chandy-Lamport算法 流式计算分为有状态和无状态两种情况,所谓状态就是计算过程中...

网友评论

      本文标题:flink状态和容错

      本文链接:https://www.haomeiwen.com/subject/mrriqrtx.html