| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Flink的问题 -> 正文阅读 |
|
[大数据]Flink的问题 |
flink消费Kafka的数据,怎么保证数据不丢失 上游可以调整偏移量, 下游事务写和幂等写, 中间靠checkpoint Savepoint和Checkpoint分别是什么?? ? ? ?Savepoint 是用来为整个流处理应用在某个“时间点”(point-in-time)进行快照生成的功能。该快照包含了数据源读取到的偏移量(offset),输入源的位置信息以及整个应用的状态。借助 分布式快照算法(Chandy-Lamport )的变体,我们可以在应用程序运行中得到某个“时间点”一致的快照。 ? ? ? ?Savepoint由一个目录以及一个元数据文件构成。其中目录中通常为一个很大的二进制文件,文件中包含了整个流应用在Savepoint或Checkpoint的状态。另外元数据文件通常相对较小,其中包含了指向Savepoint目录中各个文件的指针。 上面关于Savepoint的介绍与Checkpoint很类似,但是二者还是有一些不同点的。 ? ? ? ? 首先Checkpoint 是 Flink 用来从故障中恢复的机制,它快照下了整个应用程序的状态,当然也包括输入源读取到的位点。当应用发生故障时,Flink 将通过从 Checkpoint 加载应用程序状态并从恢复出的历史读取位点继续应用的处理,就像什么事情都没发生一样。 SavePoint和Checkpoint的3个不同点Savepoint 和 Checkpoint 作为 Apache Flink 中的两个非常独特的两个特性,它们在实现中看起来也很相似,然而二者之间也有不同的地方,主要包含如下3点: 目标上的差异 从概念上讲,Flink 的 Savepoint 和 Checkpoint 的不同之处很像传统数据库中备份与恢复日志之间的区别。Savepoint 的主要目标是充当手动备份、恢复暂停作业的方法。相反,Checkpoint 的主要目标是充当 Flink 中的恢复机制,确保能从潜在的故障中恢复。 实现上的差异 Checkpoint 和 Savepoint 在实现上也有不同。由于Savepoint设计时候更多的关注了应用的可移植性,支持对作业进行修改后状态能保持兼容,对应的,生成的恢复的成本更高;Checkpoint作为一种轻量与快速的机制,它可能利用底层状态后端的不同功能尽可能快速的恢复数据,如基于RocksDb状态后端的增量Checkpoint,可以极大加速Checkpoint过程,这种设计使得Checkpoint机制变得更加清量。 生命周期不同 Savepoint 是需要用户手动进行管理(调度、创建、删除)的。相反,Checkpoint 是自动和定期的,它们由 Flink 自动地周期性地创建和删除,无需用户的交互。 如何使用SavePoint虽然流式应用处理的数据是持续地生成的,但是存在某些场景需要重新处理之前已经处理过的数据, 此时Savepoint 便派上了用场,它可以在以下几种情况中使用:
结论Checkpoint 和 Savepoint 是 Flink 中两个不同的功能,它们满足了不同场景下的需求以确保一致性、容错性、作业升级、BUG 修复、迁移、A/B测试等。这两个功能结合使用可以确保应用程序的状态在不同的场景和环境中保持不变。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/28 10:05:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |