flink

starzy199012 小时前
java·大数据·flink
Flink Task 调度任务深度剖析:从调度策略到故障恢复的完整链路前面讲了任务调度 Graph 的三层演进(StreamGraph → JobGraph → ExecutionGraph),这篇聚焦 Flink Task 调度任务的深度剖析。ExecutionGraph 构建完成后,SchedulerNG 如何调度 Execution?Slot 如何申请和分配?Task 如何部署到 TaskManager?Eager 和 Lazy 调度有什么区别?故障恢复是如何实现的?重启策略有哪些?这篇从源码级别跟踪 Flink Task 调度任务的完整链路。
starzy199014 小时前
java·大数据·flink
Flink 任务调度 Graph 源码深度剖析:从 StreamGraph 到 ExecutionGraph 的三层演进前面讲了 SlotManager 分配 Slot 和 SlotPool 申请资源的源码实现,这篇聚焦 Flink 任务调度 Graph 的源码实现。Flink 任务从用户代码到实际执行,经历了三层 Graph 的演进:StreamGraph(流图)→ JobGraph(作业图)→ ExecutionGraph(执行图)。你有没有想过,用户写的 DataStream API 是如何变成可执行的任务的?算子链优化是如何合并算子的?并行度是如何展开的?调度器是如何调度 Execution 的?这篇从源码级别跟踪
用户3610588626121 天前
大数据·flink
Flink Time 之 AllowedLateness 深度剖析:从本质定义到内部机制与实战最佳实践前面几篇讲了 Watermark 的原理、乱序问题处理、周期性和断点式 Watermark 生成方式,以及企业级 Watermark 案例分析。Watermark 解决了"什么时候触发窗口"的问题,但有一个场景 Watermark 本身解决不了:窗口触发后,迟到的数据怎么办?
starzy19901 天前
大数据·flink
Flink SlotPool 申请资源源码跟踪:从调度器请求到Task部署的完整链路前面讲了 SlotManager 的启动和 Slot 注册流程,这篇聚焦 SlotPool 申请资源的源码实现。SlotPool 运行在 JobMaster 内部,是作业级的 Slot 池,负责向 ResourceManager 申请 Slot、管理已分配的 Slot、提供 Slot 给调度器使用。你有没有想过,SchedulerNG 需要 Slot 时,SlotPool 是如何处理的?无空闲 Slot 时是如何向 RM 申请的?Slot 分配成功后是如何通知调度器的?Slot Sharing 和超时重试
starzy19901 天前
大数据·flink
Flink SlotManager 分配 Slot 源码深度剖析:从请求接收到状态转换的完整链路前面讲了 SlotManager 的启动流程和 SlotPool 申请资源的源码实现,这篇聚焦 SlotManager 分配 Slot 的源码实现。SlotManager 运行在 ResourceManager 内部,负责管理所有已注册的 TaskManager 和 Slot,接收 SlotPool 的 requestSlot 请求,查找空闲 Slot,标记分配状态,通知 TaskManager 分配,确认分配完成。你有没有想过,SlotManager 收到请求后是如何查找 FREE Slot 的?Slo
池佳齐2 天前
大数据·flink·spark
【软考高级架构师案例】流计算 vs 批处理,Spark 和 Flink 该怎么选?在大数据架构的案例分析中,“数据处理”是必考的一环。题目经常会给你两个场景:场景 A :老板想看昨天的销售报表,数据极其庞大(TB级),要求绝对准确。
starzy19902 天前
大数据·flink
Flink 注册Slot源码深度剖析:从TaskManager注册到Slot状态机的完整链路前面讲了 TaskManager 的启动流程,这篇聚焦 Slot 注册的源码实现。你有没有想过,TaskManager 启动后,Slot 是如何注册到 ResourceManager 的?SlotReport 是如何创建和上报的?SlotManager 内部是如何管理这些 Slot 的?Slot 的四种状态(FREE/PENDING/ALLOCATED/RELEASED)是如何转换的?这篇从源码级别深度剖析 Slot 注册的完整链路。
用户3610588626123 天前
大数据·flink
Flink Time 之企业级 WaterMark 案例分析:从四大场景到调优体系与事故排查前面几篇讲了 Flink Watermark 的基础原理、乱序问题处理、周期性 Watermark 和断点式 Watermark,都是从原理和 API 的角度展开。这篇换个角度,从企业级生产环境的真实案例出发,讲清楚生产环境中 Watermark 到底怎么配、怎么调、出了问题怎么排查。
starzy19903 天前
大数据·flink
Flink 启动TaskManager流程设计:从TaskManagerRunner到Slot创建的完整启动链路前面讲了 ResourceManager 和 SlotManager 的启动流程,这篇聚焦 TaskManager 的启动设计。TaskManager 是 Flink 集群的工作节点,负责执行 Task 和提供 Slot 资源。你有没有想过,一个 TaskManager 进程从启动到就绪,经历了哪些步骤?TaskExecutor 内部有哪些核心组件?注册 ResourceManager 和创建 Slot 的流程是怎样的?这篇从流程设计角度完整剖析。
nvd113 天前
大数据·人工智能·flink
Flink 批处理驱动的湖仓 AI 财务研报流水线:从双流广播汇聚到 Agent 智能决策与原生 Iceberg 落盘全景实战在数据湖仓(Lakehouse)架构中,将底层的交易明细与经过复式记账核算的宏观统计指标相结合,交由大语言模型(LLM)进行分析推理,并产出包含宏观指标、微观论据与图表链接的财务报告,同时完成“数据湖物理表持久化与即时通讯富文本推送”的双写操作,需要解决计算引擎调度、状态同步以及一致性写入等工程问题。
俊哥大数据3 天前
大数据·flink·flinkcdc
Flink 2.3.0 从理论到实践 —— 第 14 章 Flink CDC 3.x 数据同步课程定位:第五篇数据集成续。Kafka 入报文后,MySQL 维表如何同步入湖?本章讲解 CDC 原理(Binlog/Debezium)、Flink CDC 3.x Pipeline YAML 架构、MySQL CDC 全量+增量与 Schema 演进、Kafka/Paimon CDC、Transform 模块(投影/过滤/计算列/路由)、多 Sink 路由(Doris + Paimon)、断点续传与 Exactly-Once——这是维表入湖与整库同步的核心通道。
troy1284 天前
大数据·flink
Flink 详细介绍与操作全指南:从入门到精通Apache Flink 是一个开源的分布式流处理框架,专为高吞吐、低延迟、有状态的大数据实时计算场景而设计。它支持事件时间处理、精确一次(Exactly-Once)语义、窗口计算、状态管理以及流批一体等核心能力,被广泛应用于实时数仓、风控、实时推荐、物联网监控等领域。
俊哥大数据4 天前
大数据·flink
Flink 2.3.0 从理论到实践 —— 第 8 章 窗口(Window)课程定位:窗口是流处理的核心抽象,将无界流切分为有限大小的"批次"以便聚合。本章深入四种窗口类型、时间/计数窗口、三种窗口函数、触发器与清理器、会话窗口动态 Gap、窗口性能优化——这些是实时大屏、报表聚合、CEP 模式匹配的基础。
starzy19904 天前
java·大数据·flink
Flink SlotManager启动流程源码深度剖析:从ResourceManager到Slot分配的完整链路前面几篇分别讲了 ResourceManager、Dispatcher、JobManager 的启动流程,这篇聚焦 Flink 资源管理的核心——SlotManager。你有没有想过,JobMaster 向 ResourceManager 申请 Slot 后,SlotManager 内部是如何找到合适的 Slot 并分配的?Slot 的 FREE、PENDING、ALLOCATED、RELEASED 四种状态是如何转换的?当没有空闲 Slot 时,PendingSlotRequest 是如何等待和超时的?
starzy19906 天前
大数据·flink
Flink JobManager启动流程源码深度剖析:从ClusterEntrypoint到JobMaster启动的完整链路前面几篇分别讲了 ApplicationMaster、ResourceManager、Dispatcher 的启动流程,这篇聚焦 Flink 集群的核心——JobManager。你有没有想过,执行 bin/yarn-session.sh 或 bin/flink run -m yarn-cluster 后,JobManager 进程内部依次启动了哪些组件?ResourceManager 和 Dispatcher 为什么必须按顺序启动?JobMaster 是如何从 JobGraph 构建 ExecutionG
用户3610588626126 天前
大数据·flink
Flink Time 之 WaterMark 水位线原理剖析:从生成机制到传播触发与调优实战上一篇讲了 Flink 的三种时间语义(处理时间、事件时间、摄入时间),其中事件时间是生产环境首选,但事件时间有一个核心问题需要解决:什么时候认为窗口内的数据都到齐了? 答案就是 Watermark(水位线)。
俊哥大数据6 天前
网络·架构·flink
Flink 2.3.0 从理论到实践 —— 第 2 章 Flink 运行时架构课程定位:本章深入 Flink 2.3.0 的内部运作机制,理解 JobManager / TaskManager 的协作、作业从提交到执行的完整链路、Task / SubTask / Slot 的资源模型,以及 Flink 2.x 引入的自适应调度与可插拔运行时。掌握架构是后续调优与排错的基础。
俊哥大数据6 天前
flink
Flink 2.3.0 从理论到实践 —— 第 4 章 状态管理(State)课程定位:状态是 Flink 区别于普通流处理引擎的核心能力。本章深入 Keyed State 与 Operator State 的区别、三种状态后端(HashMap / ForSt / RocksDB)、状态 TTL 与过期策略、状态大小监控与 Schema 演进——这些都是后续 Checkpoint 容错、性能调优、故障恢复的理论基础。
俊哥大数据6 天前
flink
Flink 2.3.0 从理论到实践 —— 第 5 章 时间语义与 Watermark课程定位:时间是 Flink 流处理的基础维度。本章深入 Event Time / Processing Time / Ingestion Time 三种时间语义、Watermark 的生成与传递机制、Flink 2.3 的 Watermark 对齐增强、迟到数据处理策略——这些是窗口触发、Checkpoint 推进、Join 同步的核心基础。
码爸6 天前
数据库·flink·scala
多源异构数据库实时同步至 Doris—基于 Kafka + Flink 的实时 CDC 数据集成方案整体架构自左向右分为“数据源层 → 采集层(CDC)→ 消息层(Kafka)→ 计算层(Flink)→ 存储层(Doris)→ 应用层”,并由贯穿全链路的“监控与治理层”提供可观测性保障。在迁移灰度期间,原有 Spark 离线链路继续并行保留,作为数据兜底与全量校验基准,待实时链路稳定验证后再逐步下线。