前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flink1.4 外部检查点

Flink1.4 外部检查点

作者头像
smartsi
发布2019-08-07 14:17:16
1.4K0
发布2019-08-07 14:17:16
举报
文章被收录于专栏:SmartSiSmartSi

1. 概述

检查点通过恢复状态和对应流位置来实现 Flink 状态容错,从而为应用程序提供与无故障执行相同的语义。

请参阅检查点以了解如何为你的应用程序启用和配置检查点。

2. 外部检查点 Externalized Checkpoints

默认情况下检查点不会持久化存储在外部系统中,只是用来从故障中恢复作业。当一个程序被取消时它们会被删除。但是,你可以配置检查点定期持久化存储在外部系统中,类似于保存点(savepoints)。这些外部持久化的检查点将其元数据写入持久性存储中,即使在作业失败时也不会自动清除。这样,如果你的作业失败时,你会有一个检查点用于恢复作业。

代码语言:javascript
复制
CheckpointConfig config = env.getCheckpointConfig();
config.enableExternalizedCheckpoints(ExternalizedCheckpointCleanup.RETAIN_ON_CANCELLATION);

ExternalizedCheckpointCleanup模式配置当你取消作业时外部检查点如何操作:

(1) ExternalizedCheckpointCleanup.RETAIN_ON_CANCELLATION:作业取消时保留外部检查点。请注意,在这种情况下,你必须手动清除取消后的检查点状态。

(2) ExternalizedCheckpointCleanup.DELETE_ON_CANCELLATION: 作业取消时删除外部检查点。检查点状态只有在作业失败时才可用。

2.1 目录结构

与保存点类似,外部检查点由元数据文件组成,一些其他数据文件(取决于状态后端)。外部检查点元数据的目标目录是由配置属性state.checkpoints.dir确定的,目前它只能通过配置文件来设置。

代码语言:javascript
复制
state.checkpoints.dir: hdfs:///checkpoints/

该目录包含恢复检查点所需的检查点元数据。对于MemoryStateBackend,这个元数据文件是独立的(self-contained),不需要其他文件。

FsStateBackendRocksDBStateBackend 需要写到不同的数据文件中,只需将这些文件的路径写入元数据文件。这些数据文件存储在状态后端指定的路径上。

代码语言:javascript
复制
env.setStateBackend(new RocksDBStateBackend("hdfs:///checkpoints-data/");
2.2 与保存点的区别

外部检查点与保存点有一些差异。他们

  • 使用状态后端指定的(低层次)数据格式
  • 可能是增量存储的
  • 不支持 Flink 部分功能(如重新调整)。
2.3 从外部检查点恢复

作业可以通过使用检查点的元数据文件从外部检查点中恢复,就像从保存点恢复一样(请参阅保存点恢复)。请注意,如果元数据文件不是独立的,jobmanager 需要访问它所引用的数据文件(参见上面的目录结构)。

代码语言:javascript
复制
$ bin/flink run -s :checkpointMetaDataPath [:runArgs]

备注:

代码语言:javascript
复制
Flink版本:1.4

术语翻译:

术语

翻译

Checkpoints

检查点

Externalized Checkpoints

外部检查点

savepoints

保存点

原文:https://ci.apache.org/projects/flink/flink-docs-release-1.4/ops/state/checkpoints.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 概述
  • 2. 外部检查点 Externalized Checkpoints
    • 2.1 目录结构
      • 2.2 与保存点的区别
        • 2.3 从外部检查点恢复
        相关产品与服务
        大数据
        全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档