- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第三章
大数据实时处理开发实践
大数据实时处理技术栈分布式消息系统Kafka分布式实时处理SparkStreaming分布式实时处理Flink高速道路及服务区拥堵洞察案例实践
3.4.1Flink体系框架及基本原理
实时计算需要:有状态的流处理(1/3)实时计算任务举例:计算过去一小时内每个用户的平均购买金额。任务分析:需要持续跟踪并更新每个用户在这一小时内的所有购买行为。实时计算核心概念——状态State:当一个流处理任务在处理持续不断的数据流时,需要根据业务逻辑保留一些必要的数据状态。传统的批处理来计算流式数据,可以按照预定的时间间隔(例如每2分钟一次)收集数据,然后在这些数据上运行批处理任务,来实现计算。以时间作为批次的划分依据,然后通过周期性执行完成计算,例如每小时或每天处理一次累积的数据。但传统的批处理系统一般难以处理数据到达的乱序问题,如果数据事件以非顺序方式到达,可能会导致错误的计算结果。理想的实时计算应该是有状态的流处理,如右图所示:大规模分布式状态管理:Flink可以累积状态和维护状态,可以基于历史接收的所有事件,计算并生成输出。时序性:Flink对于数据完整性有机制可以操控,并保证时序性。实时性:采用持续性数据处理模型来生成实时结果。
实时计算需要:分布式流处理(2/3)流处理的本质需求:流处理以代码作为数据处理的基础逻辑,从一个提供无穷无尽的数据的数据源持续接收数据,数据流经代码处理后产生结果,然后输出分布式流处理:假设数据输入流有很多个使用者,每个使用者有自己的ID;如果计算每个使用者出现的次数,则需要让同一个使用者的出现事件“流”到同一般运算代码中因此需要对Stream进行分区,设定相应的键值key,然后让具有相同key的数据流到同一个计算实例computationinstance并进行同样的运算
实时计算需要:有状态分布式流处理(3/3)有状态分布式流处理:如右图所示,图中的代码定义了变量x,x在数据处理过程中会执行读操作和写操作,在最后输出结果时,可以依据变量x决定输出的内容,即变量x会影响最终的输出结果。第一个关键点是依据键值的状态协同划分具有同样key的状态会流到相同的计算实例computationinstance,这些状态会跟同一个key的事件累积在同一个计算实例。相当于根据输入流的key对状态进行重新分区,当不同分区的状态进入Stream之后,其累积的状态就变成了co-partiton。第二个关键点是合理使用本地状态后端(StateBackend)有状态分布式流处理引擎的状态可能会累积得非常大,即当key非常多时,状态可能会超出单一节点的负荷量,这时候必须用嵌入或本地状态后端去维护:使用本地资源(如节点的内存或磁盘)来存储和管理状态对于状态大小较小或可接受的场景,使用内存中的状态后端,可以提供非常快速的访问速度。但这种方式的缺点是,一旦系统崩溃,所有的状态数据可能会丢失,因此还需要将状态持久化到更稳定的存储系统中(如HDFS),因此Flink提供了多种方式的状态后端类型
分布式流处理的状态维护及容错(1/8)在有状态分布式流处理中有两大挑战:状态维护:将每次输入的事件反映到状态状态容错:更改状态都是精确一次,如果更改超过一次,意味着数据引擎产生的结果不可靠要确保状态拥有精确一次的容错,要在分布式场景下对多个拥有本地状态的算子产生一个全域一致的快照(GlobalConsistentSnapshot);且要在不中断运算的前提下产生快照。在非并行的简单场景中,精确一次的容错方法:面对无限流的数据,只需要使用单一的程序进行运算,每执行完一次运算就会累积一次状态,每处理完一组数据,更改完状态后,进行一次快照,快照包含在队列中并与相应的状态进行对比。完成一致的快照,就能确保精确一次的容错机制。非并行的简单场景
分布式流处理的状态维护及容错(2/8)在分布式场景下,实现状态容错就变得复杂,需要专门的机制保障Flink采用分布式快照来实现状态容错,任何一个节点挂掉的时候都可以在之前的检查点(Checkpoint)中将其恢复。如右图所示,其中检查点的各个运算值的状态数据的快照是连续的,每次产生检查点时将各个状态数据传入共享的文件系统中。全域一致的快照分布式场景如下图所示,当任何一个Process出错挂掉后,可以直接从3个完整的Checkpoint中将所有的算子运算值的状态恢复,从上次消费数据的地方重新计算,使整个Process能够实现分布式场景中精确一次的容错。Process指的是整个流处理任务或应用程序的执行过程。在流处理的上下文中,一个Process通常涉及到数据的输入、处理和输出过程。
分布式流处理的状态维护及容错(3/8)用一个简单的场景来描述Checkpoint的具体过程,如右图,在
您可能关注的文档
- 职业规划PPT-第八章.pptx
- 职业规划PPT-第六章.pptx
- 职业规划PPT-第十章.pptx
- 职业规划PPT-第五章.pptx
- 单元2 Java语言基础.pptx
- 单元3 程序控制结构.pptx
- 单元4 方法和数组.pptx
- 单元1 初识Java电子课件.pptx
- 单元5 面向对象基础.pptx
- 单元6 面向对象高级.pptx
- 第三章 大数据实时处理开发实践-3.4 分布式实时处理Flink-3.4.2.pptx
- 第三章 大数据实时处理开发实践-3.5 高速道路及服务区拥堵洞察案例实践.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.1大数据交互式分析技术栈.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.2分布式数据仓库Hive.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.3Hive SQL操作实践.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.4分布式计算框架Spark SQL.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.5分布式计算框架Flink关系型API.pptx
- 第四章 大数据交互式OLAP多维分析开发实践-4.6 大数据交互式OLAP多维分析案例实践.pptx
- 第五章 大数据可视化应用开发实践-5.1.pptx
- 第五章 大数据可视化应用开发实践-5.2.pptx
最近下载
- 第一单元《做学习的主人》大单元整体教学评一体化教学设计 2025道德与法治三年级上册.docx
- 入党志愿书空白表格_1831893502精品.doc VIP
- 三一汽车起重机STC1000C7-1_产品手册用户使用说明书技术参数图解图示电子版.pdf VIP
- 2025-2026学年高二物理上学期第一次月考卷(真题含答案解析).docx VIP
- 高中语文专题一沁园春长沙学案苏教版.doc VIP
- 《中国老年骨质疏松症诊疗指南(2024)》解读-.pptx VIP
- 门式钢架房屋技术规程2002.pdf
- 《2校园的树木我修剪》(教案)人民版劳动技术七年级上册.docx
- 报价单模板模板.docx VIP
- 意外事故调查表(标准范本).pdf VIP
文档评论(0)