云计算与大数据技术 课件 第12章 Flink计算平台与实践.pptx

云计算与大数据技术 课件 第12章 Flink计算平台与实践.pptx

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

Flink简介

Flink简介Flink是一个分布式大数据处理引擎和框架,用于在无边界和有边界的数据流上进行有状态的计算。Flink是一个为了提升流处理性能而创建的平台,它非常适用于各种需要低延迟(微秒到毫秒级)的实时数据处理场景。

Flink简介阿里巴巴的实时计算平台在“双十一”期间能平稳运行,计算峰值可达到每秒40亿条记录,数据量可达到每秒7TB。该计算平台就采用了Flink流处理技术.Flink的特点是实现了真正的实时流处理,支持低延迟、高吞吐量和exactly-once语义。

Spark和Flink的比较

Flink的分层抽象APIFlink根据抽象程度分层,提供了不同级别的API。每个层次的API在简洁性和表达力上有不同的侧重点,并且针对不同的应用场景。

Flink的分层抽象APIFlink为流处理和批处理提供了两套强大的DataStreamAPI和DataSetAPI,以满足流处理和批处理中的各种场景需求,并在更高层级提供了一种关系型的TableAPI和SQLAPI来实现FlinkAPI的流处理与批处理的统一。

Flink应用场景Flink已广泛应用于实时ETL,如实时数仓、商业数据即席分析、特征工程和在线数据服务等对稳定性要求比较高的场景。

Flink简介Flink对以下场景有非常好的支持1.实时智能推荐2.复杂事件处理3.实时欺诈检测4.实时数仓与ETL5.流数据分析6.实时报表分析

Flink简介

Flink软件栈和程序

Flink软件栈Flink软件栈核心是DistributedStreamingDataflow,用于执行数据流处理程序。Flink运行时程序是一个通过有状态的算子连接的数据流的有向无环图(DAG),对上层提供有限数据流的DataSetAPI和无限数据流的DataStreamAPI。

Flink软件栈部署层主要涉及Flink的部署方式。Runtime核心层主要负责为上层不同接口提供基础服务。APILibraries层提供支持流处理和批处理的丰富API。

Flink程序执行流程当一个Flink程序的执行时,它会被映射为StreamingDataflow。一个StreamingDataflow是由一组Stream和TransformationOperator组成的,它类似于一个DAG,在启动时从一个或多个SourceOperator开始,结束于一个或多个SinkOperator。

Flink程序执行流程Flink对数据的处理被抽象为以下三步。(1)接收数据:接收一个或多个数据源。(2)处理数据:执行若干用户需要的转换算子。(3)输出处理结果:将转换后的结果输出。

Flink程序执行流程

Flink运行时架构

Flink运行时架构Flink集群主要由三部分组成:JobManager、TaskManager和客户端(Client),这三者各自运行在独立的Java虚拟机(JVM)进程中。当Flink集群启动时,至少会启动一个JobManager和一个TaskManager,但根据集群规模和作业需求,可以启动多个TaskManager。客户端将任务提交给JobManager,JobManager将任务拆分成Task并调度到各个TaskManager中执行,最后TaskManager将Task执行的情况汇报给JobManager。

Flink运行时架构

Flink运行时架构Flink提供了专门的客户端(Client)用于提交作业(Job)到集群中。在服务端,Flink采用了分布式的主从架构,其中JobManager作为主节点,而TaskManager作为从节点或工作节点。JobManager负责管理计算资源(TaskManager)和任务的调度,同时创建检查点(Checkpoint)以进行容错处理;TaskManager则负责实际执行SubTask。

Flink运行时架构这种主从架构的设计使得Flink能够高效地处理大规模数据流,并提供了高可用性和容错功能,通过检查点机制来确保在故障发生时能够恢复作业的状态,并从故障点继续执行,从而保证了数据的可靠性和一致性。

Flink任务提交流程Flink不仅可以部署在包括YARN、Mesos、Kubernetes在内的多种资源管理框架上,还支持在裸机集群上独立部署,同时能轻松部署在云端。在不同的部署环境下,Flink任务的提交流程可能会有所不同,以满足特定的环境和需求。在独立模式(Standalone)下,有会话(Session)模式和应用(Application)模式两种部署方式。在YARN集群模式下,有会话模式、单作业(Per-Job)模式和应用模式3种部署方式。

Flink时间处理机制

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档