当前位置: 首页 > news >正文

flink工作流程

Flink的工作流程是一个从用户代码到分布式执行的完整过程,主要分为以下核心阶段(附关键流程图解):
程序提交、图转换、资源分配任务执行四个阶段,具体流程如下:

一、程序提交阶段

‌代码解析
用户通过DataStream API或Table API编写程序,调用env.execute()触发执行。客户端生成初始逻辑图StreamGraph,包含所有算子节点和数据流边
‌图优化转换‌

‌StreamGraph‌:直接映射用户代码逻辑,是最接近用户层的初始图结构。
‌JobGraph‌:进行算子链(OperatorChain)合并优化,将多个算子合并为同一线程执行的任务,减少网络开销。
‌ExecutionGraph‌:加入并行度概念,是实际调度执行的数据结构,由JobMaster管理。

‌StreamGraph → JobGraph‌:合并算子链(Operator Chain),将可并行且无shuffle的算子合并为Task

// 示例:map和filter会被合并为单个Task
dataStream.map(...).filter(...).keyBy(...).sum(...)

‌JobGraph → ExecutionGraph‌:根据并行度展开为可调度的并行子任务

二、集群调度阶段

‌资源申请‌
JobManager向资源管理器(YARN/K8s)申请Slot资源
Standalone模式直接使用预分配TaskManager资源
‌任务部署‌
每个Task部署到对应Slot执行
网络通信模式
‌Forward‌:一对一传输(如map→filter)
‌Hash/Partition‌:按Key重分布(如keyBy)

三、运行时执行阶段

‌数据流处理‌
TaskManager启动线程执行任务,采用事件驱动模型。
数据到达时触发计算,通过时间窗口和水位线机制处理乱序数据,结果可通过Sink输出或继续流转。
执行完成后,单作业模式会释放集群资源,会话模式则保留资源供其他作业使用。
关键机制
‌Watermark‌:推动事件时间进展
‌Checkpoint‌:周期性状态快照
‌容错恢复‌
故障时从最近Checkpoint恢复状态
端到端精确一次需Sink支持两阶段提交

四、部署模式差异

模式 资源隔离性 适用场景 工作流特性
会话模式 开发测试 多作业共享常驻集群
单作业模式 生产环境核心作业 作业级集群生命周期管理
应用模式 复杂应用 main()在集群执行,降低客户端负载

五、完整流程图解

Flink作业执行流程

以下为Apache Flink作业从用户代码到最终执行的完整流程示意图及说明:

http://www.dtcms.com/a/426766.html

相关文章:

  • openHarmony之storage_daemon:分区挂载与设备节点管理机制讲解
  • 建站怎么赚钱个人官方网站怎么建设
  • 学习笔记093——Windows系统如何定时备份远程服务器的mysql文件到本地?
  • 操作系统内核架构深度解析:从单内核、微内核到鸿蒙分布式设计
  • MySQL 架构全景解析
  • .NET MVC中实现后台商品列表功能
  • oracle logwr,ckpt,dbwn 如何协同工作的
  • C# 网络通讯核心知识点笔记
  • Ubuntu之apt安装ClickHouse数据库
  • 在线音乐网站开发现状网站全屏弹出窗口
  • 泛型在Java集合框架中的应用有哪些?
  • 服务器中使用Docker部署前端项目
  • mysql之二进制日志
  • 【完整源码+数据集+部署教程】染色体图像分割系统: yolov8-seg-KernelWarehouse
  • Docker MySQL 使用全流程
  • Visual Studio主题、字体、快捷键、开发环境设置,自用
  • 火山 19 混音伴音 接口
  • Bean精细化控制属性序列化反序列化
  • 前端权限模型——RBAC
  • 杭州知名网站建设公司电商网站建设好么
  • 不忘初心网站建设做网站的工具
  • VSCode实现字符串粘贴转义复制反转义
  • 第2章 三个小工具的编写(2)
  • 【DeepResearch】langgraph自主迭代研究能力的 AI 代理及分析
  • 专题:2025医药行业数智赋能与AI应用全景研究报告|附200+份报告PDF、数据仪表盘汇总下载
  • Alibaba Cloud Linux 3 +Docker 部署 ThinkPHP6 (宝塔环境)-问题篇
  • LeetCode 刷题【93. 复原 IP 地址】
  • Python类和对象----实例属性,类属性(这是我理解类和对象最透彻的一次!!)
  • 文档解析Logics-Parsing
  • 网站设计报价.doc网页端