- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
Flink状态与容错深度剖析1
目录CONTENTS01.状态管理02.键控状态与TTL03.状态实战编码04.容错机制05.实时推荐系统实战06.实践与总结2
01状态管理3
状态赋予流处理“记忆”能力状态是计算节点在事件间保留的临时数据,使流处理具备“记忆”,从而支持聚合、连接、模式检测等复杂语义。有状态算子可跨时间窗、跨事件累积信息,实现业务连续性。用户行为分析支撑个性化推荐,实现精准营销。实时统计实现精确去重,保障数据准确性。4
三大组件协同支撑容错机制状态(State)运行时内存数据,是计算过程中的临时存储。+检查点(Checkpoint)周期性的全局一致性快照,用于故障恢复。+状态后端(StateBackend)状态的存储与访问实现,决定数据存于何处。三者协同,实现Exactly-Once语义5
检查点原理与配置精要核心原理:Chandy-Lamport算法通过注入Barrier(屏障),在不停止整个流处理的情况下,实现全局一致性快照,保证状态数据在某一时刻的完整视图。关键配置项间隔(Interval):触发快照的频率,影响恢复点密度。模式(Mode):EXACTLY_ONCE或AT_LEAST_ONCE语义。超时(Timeout):快照完成的最后期限。存储(Storage):可靠的分布式文件系统,如HDFS/S3。6
状态后端选型对比HashMapStateBackend存储:内存(JVMHeap)特点:极速读写,但受堆大小限制,适合小状态。EmbeddedRocksDB存储:本地磁盘+内存特点:支持超大状态,增量检查点效率高,是生产环境首选。FsStateBackend存储:内存+外部文件特点:已逐渐被前两者取代,不建议在新项目中使用。7
02键控状态与TTL8
五种键控状态ValueState存储单个值,如计数器。ListState存储列表,如事件序列。MapState存储键值对,最灵活。ReducingState存储归约结果。AggregatingState存储聚合结果。键控状态与分区机制键控状态按key哈希将相同键的数据路由到同一并发实例,实现天然隔离和本地性。状态隔离:相同键的数据由同一算子实例处理。水平扩展:键空间无限,可通过增加并发扩展处理能力。生命周期绑定:状态在RichFunction.open()初始化,在close()释放。状态描述符与TTL机制StateDescriptor定义状态的元数据(名称、类型等),是访问状态的“钥匙”。StateTTL自动清理过期状态,避免内存泄漏。可配置存活时间、更新策略等。9
03状态实战编码10
实战:ValueState实现两数均值需求:每两个输入数,计算并输出一次平均值。代码实现核心逻辑状态保存(计数,总和)。每来一个数,更新状态。计数为偶数时,计算均值并输出。计算后清除状态,避免内存泄漏。状态即微型数据库11
实战:ListState实现移动平均需求:累积最近的3个数值,计算其滑动平均值。核心逻辑使用ListState保存最近的3个数值。新数值到来时,添加到列表。计算列表中所有元素的平均值并输出。classCountAverageWithListextendsRichFlatMapFunction[(Long,Double),(Long,Double)]{privatevarelementsByKey:ListState[(Long,Double)]=_overridedefopen(parameters:Configuration):Unit={valdescriptor=newListStateDescriptor[(Long,Double)](listState,createTypeInformation[(Long,Double)])elementsByKey=getRuntimeContext.getListState(descriptor)}overridedefflatMap(element:(Long,Double),out:Collector[(Long,Double)]):Unit={//添加新元素elementsByKey.add(element)importscala.collection.JavaConverters._valallElements=elementsByKey.get().asScala.toList//当累
您可能关注的文档
- FDM 3D 打印机硬件- 增材制造设备与维护 -1765263537826.pptx
- FDM 材料及分类详解- 增材制造工艺制订与实施 -1765263809166.pptx
- FDM 后处理工艺- 增材制造工艺制订与实施 -1765263871517.pptx
- FDM 技术软件及固件- 增材制造设备与维护 -1765263663658.pptx
- FDM 优缺点- 增材制造工艺制订与实施 -1765264011279.pptx
- FDM-3D 打印机的设备操作- 增材制造设备与维护 -1765263900863.pptx
- FKJ 和 ZJ 电路-铁道信号自动控制课程团队-1765263733090.pptx
- Gerber 以及装配 PDF 的一键输出-PCB 工艺 与设计-1765263793017.pptx
- GIS 软件应用-主讲人 周紫晏-1765263470951.pptx
- GIS 软件应用-主讲人 周紫晏-1765263513082.pptx
最近下载
- 运动解剖学(山东联盟)智慧树知到课后章节答案2023年下聊城大学.docx VIP
- 河湖大典江西之修水.docx VIP
- 卷扬式启闭机的钢丝绳更换方法.pdf VIP
- DRG付费制度改革促进医院精细化管理.pptx VIP
- JJF(吉) 105-2022 快速核酸检测仪校准规范.docx VIP
- JJF(吉) 111-2022 一氧化氮、二氧化氮气体检测仪校准规范.docx VIP
- JJF(吉) 122-2023 漆膜划格器校准规范.docx VIP
- JJF(吉) 127-2023 容量筒校准规范.docx VIP
- JJF(吉) 148-2025 电能质量分析仪校准规范.pdf VIP
- JJF(吉) 57-2011 水质快速分析仪校准规范.docx VIP
原创力文档


文档评论(0)