Flink 保证 ExactlyOnce

1、使用执行ExactlyOnce 的数据源,比如 kafka

2、使用FlinkConsumer,开启CheckPointing,偏移量会保存通过CheckPointing 保存到StateBackend中,并且默认会将偏移量写入kafka的特殊 topic中,即 __consumer_offsets

3、FlinkKafkaConsumer的setCommitOffsetsOnCheckpoints 参数默认为true,即将偏移量写入到kafka特殊的 Topic中,目的是为了监控或重启任务没有指定savePoint时可以接着以前的偏移量继续消费。

4、并且设置CheckpointingMode.EXACTLY_ONCE

5、存储系统支持覆盖(Redis、Hbase、ES) 使用幂等性,将原来的数据覆盖

6、Barrier(隔离带)可以保证一个流水线中的所有算子都处理完成了在对该条数据做CheckPoint。

7、存储系统不支持覆盖

要支持事务,成功了提交事务和偏移量,如果失败可以回滚且不更新偏移量

最新文章

  1. PostGIS(解压版)安装
  2. laraver mongo 查询操作
  3. python 中变量的命名方法
  4. 打造Ubuntu下Java开发环境
  5. C语言学习003:Hello 指针
  6. 转 未能加载类型 xxxx
  7. [转]Android 5.0——Material Design详解(动画篇)
  8. 蓝牙4.0LED灯控方案
  9. Android(java)学习笔记64:线程的控制
  10. PHP的反射机制(转)
  11. CUDA 进阶学习
  12. The 5th Zhejiang Provincial Collegiate Programming Contest------ProblemA:Accurately Say "CocaCola"!
  13. PowerDesigner实用技巧小结(3)
  14. iOS开发之自定义输入框(利用UITextField及UITextView)
  15. js判断上传文件大小
  16. [Codeforces 606C]Sorting Railway Cars
  17. C++对象模型(三):Program Transformation Semantics (程序转换语义学)
  18. 安装centOS后要解决的问题
  19. Spring Data REST PATCH请求 远程代码执行漏洞案例(CVE-2017-8046)
  20. [LeetCode] Find Eventual Safe States 找到最终的安全状态

热门文章

  1. Bat脚本备份sqlserver 表结构、存储过程、函数、指定表数据
  2. 两万字Vue.js基础学习笔记
  3. 导出数据在exlcel上
  4. 第十五篇 -- QListWidget与QToolButton(界面)
  5. 手把手教windows上安装linux虚拟机及环境配置
  6. linux下利用JMX监控Tomcat
  7. JBoss 4.x JBossMQ JMS 反序列化漏洞(CVE-2017-7504)
  8. JAVA预科:Markdown基础语法
  9. 代码重构与单元测试——使用“以查询取代临时变量”再次对Statement()方法进行重构(七)
  10. Mantis安装过程笔记