千家信息网

flink基础组件有哪些

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,这篇文章主要为大家展示了"flink基础组件有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"flink基础组件有哪些"这篇文章吧。flink,一个面向
千家信息网最后更新 2025年02月05日flink基础组件有哪些

这篇文章主要为大家展示了"flink基础组件有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"flink基础组件有哪些"这篇文章吧。

flink,一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。和mapreduce,storm, spark有着类似的功能。

首先来看下大概图

下面来说下具体的组件

JobManager,taskManager

JobManager:JobManager是Flink系统的协调者,它负责接收Flink Job,调度组成Job的多个Task的执行。同时,JobManager还负责收集Job的状态信息,并管理Flink集群中从节点 TaskManager。

JobManager

JobManager是Flink系统的协调者,也是一个独立的actor,它负责接收Flink Job,调度组成Job的多个Task的执行。同时,JobManager还负责收集Job的状态信息,并管理Flink集群中从节点 TaskManager。JobManager所负责的各项管理功能,它接收到并处理的事件主要包括:

  • RegisterTaskManager

在Flink集群启动的时候,TaskManager会向JobManager注册,如果注册成功,则JobManager会向TaskManager回复消息AcknowledgeRegistration。

  • SubmitJob

Flink程序内部通过Client向JobManager提交Flink Job,其中在消息SubmitJob中以JobGraph形式描述了Job的基本信息。

  • CancelJob

请求取消一个Flink Job的执行,CancelJob消息中包含了Job的ID,如果成功则返回消息CancellationSuccess,失败则返回消息CancellationFailure。

  • UpdateTaskExecutionState

TaskManager会向JobManager请求更新ExecutionGraph中的ExecutionVertex的状态信息,更新成功则返回true。

  • RequestNextInputSplit

运行在TaskManager上面的Task,请求获取下一个要处理的输入Split,成功则返回NextInputSplit。

  • JobStatusChanged

ExecutionGraph向JobManager发送该消息,用来表示Flink Job的状态发生的变化,例如:RUNNING、CANCELING、FINISHED等。

TaskManager

TaskManager也是一个Actor,它是实际负责执行计算的Worker,在其上执行Flink Job的一组Task。每个TaskManager负责管理其所在节点上的资源信息,如内存、磁盘、网络,在启动的时候将资源的状态向 JobManager汇报。TaskManager端可以分成两个阶段:

  • 注册阶段

TaskManager会向JobManager注册,发送RegisterTaskManager消息,等待JobManager返回AcknowledgeRegistration,然后TaskManager就可以进行初始化过程。

  • 可操作阶段

该阶段TaskManager可以接收并处理与Task有关的消息,如SubmitTask、CancelTask、FailTask。如果 TaskManager无法连接到JobManager,这是TaskManager就失去了与JobManager的联系,会自动进入"注册阶段",只 有完成注册才能继续处理Task相关的消息。

client

当用户提交一个Flink程序时,会首先创建一个Client,该Client首先会对用户提交的Flink程序进行预处理,并提交到Flink集群中处 理,所以Client需要从用户提交的Flink程序配置中获取JobManager的地址,并建立到JobManager的连接,将Flink Job提交给JobManager。Client会将用户提交的Flink程序组装一个JobGraph, 并且是以JobGraph的形式提交的。一个JobGraph是一个Flink Dataflow,它由多个JobVertex组成的DAG。其中,一个JobGraph包含了一个Flink程序的如下信息:JobID、Job名称、 配置信息、一组JobVertex等。

以上是"flink基础组件有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

消息 信息 处理 程序 状态 阶段 组件 成功 用户 集群 管理 基础 内容 功能 多个 篇文章 节点 协调者 同时 形式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 登录张家口人社被服务器拒绝 pg数据库查看连接数 考网络技术还是信息安全技术 网络安全 责任备案表 软件开发项目如何办理环评 数据库查询语句二表合一 共建网络安全ppt 集团软件开发 计算机软件开发会议室 数据库设计属于什么文件 糖蛋白鉴定软件开发 美国软件开发例子 大学学生数据库论文设计 广州地铁 软件开发 待遇 加强网络安全建设的建议 网络安全专业读研方向 网络安全倡议小视频 区块链的数据库有知识产权吗 魅族怎么取消锁定数据库 你没有与此服务器同步权限 上海塔人网络技术有限公司 上海工业大型服务器厂家 软件开发项目保密协议范本 服务器端口映射教程 配备网络安全专职人员是什么呢 互联网消费金融科技金融与监管 功能软件开发路线 周光涛 联通网络技术研究院 加强网络安全建设的建议 杭州交友软件开发正规平台
0