首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

大解密:Flink恰巧语义一次消费,怎么保证?

  • 25-03-07 20:21
  • 2568
  • 12410
blog.csdn.net

我们都知道Flink在流式处理上性能强大,且很好地支持ExactlyOnce语义;且这也是Flink核心的技术点,所以成为面试官喜欢追问的一个话题:Flink恰巧语义一次消费,怎么保证?

     在这个思维导图进行了详细的描述及说明。欢迎阅读及下载超全干货--Flink思维导图,花了3周左右编写、校对。 下载链接:Flink_思维导图(干货).xmind.zip

上述思维导图中也进行了详细地描述:Flink_思维导图(干货).xmind.zip截图如下: 


如果面试官问到,可以大致从这些方面进行分析:

Flink是由source --> transformation --> sink三部分组成;也就是说Flink要实现ExactlyOnce语义与这三者脱不了干系;

  1. 数据源Source,首先要支持ExactlyOnce,比如Kafka;
  2. 接着需要对Flink开启checkpoint机制;即开启状态后端,保存其偏移量及中间状态数据;
  3. Sink端需要支持写覆盖也就是我们经常说的幂等性或者支持事务(两阶段提升)

Flink中的checkpoint具体操作如下:

            使用FlinkKafkaConsumer,开启CheckPointing,偏移量会保存通过CheckPoint保存到StateBackend中,并且默认会将偏     移量写入Kafka的特殊topic中,即:__consumer_offsets

            FlinkKafkaConsumr的setCommitOffsetsOnCheckpoints参数默认true,即将偏移量写入到Kafka特殊的Topic中,目的是为了监控或重启任务没有指定savePoint时可以接着一起的偏移量继续消费并且设置CheckpointingMode.EXACTLY_ONCE

            Barrier【隔离带】可以保证一个流水线中的所有算子都处理成功了,才会对该条数据做CheckPoint

存储系统不支持覆盖的话,就得要支持事务,成功了提交事务和更新偏移量,如果失败可以回滚且不更新偏移量

 


文章最后,给大家推荐一些受欢迎的技术博客链接:

  1. Hadoop相关技术博客链接
  2. Spark 核心技术链接
  3. JAVA相关的深度技术博客链接
  4. 超全干货--Flink思维导图,花了3周左右编写、校对
  5. 深入JAVA 的JVM核心原理解决线上各种故障【附案例】
  6. 请谈谈你对volatile的理解?--最近小李子与面试官的一场“硬核较量”
  7. 聊聊RPC通信,经常被问到的一道面试题。源码+笔记,包懂

 


欢迎扫描下方的二维码或 搜索 公众号“10点进修”,我们会有更多、且及时的资料推送给您,欢迎多多交流!

                                           

       

注:本文转载自blog.csdn.net的不埋雷的探长的文章"https://blog.csdn.net/weixin_32265569/article/details/107439769"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top