很多人学 Flink 卡在同一个位置:DataStream 的 map、filter、keyBy 会写,窗口也能照着示例敲出来,但一到真实项目就发现不够用——状态越来越大不知道怎么管,作业跑几天开始背压,Table SQL 写出来和预期结果对不上,面试官问一句「你的 Checkpoint 为什么这么慢」就答不上来。这门课针对的正是这个阶段的缺口,不铺基础语法,直接进高级特性和案例。
先确认你缺的是哪一块
这门课不适合零基础。如果还没搞清楚 JobManager 和 TaskManager 的分工、不清楚并行度和 slot 的关系、没跑通过一个带窗口的流作业,先回去补前面的内容,否则看到状态后端和 Checkpoint 配置会一头雾水。
但如果你已经能独立写出一个能跑的 Flink 作业,却在下面这些场景里反复卡壳,那这里讲的东西正好对症:
- 作业的状态越跑越大,重启后恢复慢,不知道该选哪种状态后端、怎么配增量 Checkpoint;
- 线上出现反压,只会看 Web UI 的红绿条,定位不到是哪个算子、哪段逻辑的问题;
- Table API 和 SQL 写得别扭,流表和维表 join、时间属性、窗口聚合的语义分不清;
- 面试被问 Flink 的高级特性和新版本变化,只能泛泛答「支持 Exactly-Once」。
高级 API 部分要解决什么
DataStream 的高级用法不是多记几个算子,而是理解「为什么这么设计」。课程会展开状态编程的具体写法,包括 Keyed State 和 Operator State 的区别、状态的生命周期、TTL 怎么设才合理。Checkpoint 与 Savepoint 不只是会点按钮触发,而是要把对齐、超时、重启策略这几项参数和作业的实际表现对应起来——为什么加了并行度之后 Checkpoint 反而变慢,这类问题在案例里会拆开看。
另外,容错和语义保证这块会落到具体配置上。Exactly-Once 不是一个开关,它依赖 Source 的可重放、Checkpoint 的完成、Sink 的事务或幂等写入,任何一环断了语义就退化。这部分建议边看边对着自己的作业检查一遍。
Table SQL:从会写到写对
Table API 和 SQL 是这门课的另一条主线。很多人从 DataStream 转过来,第一反应是「SQL 更简单」,实际写起来才发现坑更多:流表上的聚合结果什么时候输出、时间属性用事件时间还是处理时间、维表 join 的数据延迟怎么处理、回撤流和追加流的区别在哪。这些不是语法问题,是语义问题。
课程会把 SQL 的写法和小案例绑在一起讲,重点在于让你能判断一条 SQL 在流模式下会产出什么样的结果,而不是跑出来和预期不一样再去猜。这部分内容对做实时数仓、实时报表方向的人直接可用。
案例的作用是串起来
单独的算子、单独的 SQL 都会用,不等于能拼成一个完整作业。案例部分的价值在于把状态、时间、Checkpoint、SQL 这几块放在同一个场景里,让你看到它们怎么互相牵制:窗口开大了状态就涨,并行度调高了乱序数据就多,维表缓存设不好就会拖慢整条链路。
看案例时建议不要把代码只当成答案。每看完一个,试着问自己:如果数据量翻十倍,哪个参数先撑不住?如果要求输出延迟压到秒级,现在的方案要改哪里?能答上这两个问题,才算真的消化了。
看完应该能回答的问题
- 你的作业选了哪种状态后端,为什么,换成另一种会有什么代价?
- Checkpoint 变慢或频繁超时,你会按什么顺序排查?
- 一条带事件时间和窗口聚合的 SQL,结果在什么条件下才输出?
- 维表 join 的数据一致性和延迟,你会怎么权衡?
- Exactly-Once 在你的链路里,是靠哪几个环节共同保证的?
这些问题答不上来,说明对应章节还得再看一遍。带着自己的作业去看,比纯刷视频有效得多。
Flink深度部署:高级开发与案例分析
深入掌握Flink高级特性和实战案例
编辑点评
系统讲解Flink高级API与Table SQL,结合实战案例,适合有Flink基础的学习者。
⭐ 编辑推荐
本课程深入解析Flink高级特性和Table SQL,通过实战案例,助你成为Flink专家。
课程亮点
课程目录
📁 Flink-day04
Flink-day04资料.zip [1.8 MB]
12-[掌握]-Flink-Table-SQL-案例3-Table和SQL完成基于事件时间的窗口计算【】.mp4 [40.7 MB]
05-[了解]-Flink高级API-Checkpoint-状态恢复-手动重启【】.mp4 [34.3 MB]
03-[理解]-Flink高级API-Checkpoint-代码演示【】.mp4 [67.6 MB]
04-[理解]-Flink高级API-Checkpoint-状态恢复-自动重启【】.mp4 [48.3 MB]
10-[掌握]-Flink-Table-SQL-案例1-DataStream和Table-View的转换【】.mp4 [46.4 MB]
11-[掌握]-Flink-Table-SQL-案例2-Table和SQL风格查询完成WordCount【】.mp4 [35.5 MB]
09-[了解]-Flink-Table-SQL-动态表和连续查询【】.mp4 [12.5 MB]
14-[掌握]-Flink-Table-SQL-案例4-Table和SQL连接Kafka完成实时ETL【】.mp4 [62.3 MB]
07-[了解]-Flink-Table-SQL-介绍-发展历史【】.mp4 [24.3 MB]
06-[了解]-Flink高级API-SavePoint【】.mp4 [32.7 MB]
02-[理解]-Flink高级API-Checkpoint-状态存储后端【】.mp4 [27.8 MB]
08-[了解]-Flink-Table-SQL-官网API介绍【】.mp4 [49.1 MB]
01-[理解]-Flink高级API-Checkpoint-Checkpoint和State-Checkpoint执行流程【】.mp4 [48.2 MB]
13-[了解]-Flink-Table-SQL-案例3-Table和SQL完成基于事件时间的窗口计算-Table风格【】.mp4 [25.9 MB]
📁 Flink-day05
Flink-day05资料.zip [1.8 MB]
03-[掌握]-Flink案例练习-模拟双十一实时交易大屏-代码实现-2【】.mp4 [56.9 MB]
04-[掌握]-Flink案例练习-模拟双十一实时交易大屏-代码实现-3【】.mp4 [120.8 MB]
01-[了解]-Flink案例练习-模拟双十一实时交易大屏-需求和数据【】.mp4 [16.4 MB]
07-[了解]-Flink高级特性和新特性-BroadcastState-案例需求和数据【】.mp4 [37.6 MB]
08-[掌握]-Flink高级特性和新特性-BroadcastState-代码实现【】.mp4 [103.8 MB]
02-[掌握]-Flink案例练习-模拟双十一实时交易大屏-代码实现-1【】.mp4 [32.2 MB]
05-[了解]-Flink案例练习-订单自动好评-需求和数据【】.mp4 [8.6 MB]
06-[掌握]-Flink案例练习-订单自动好评-代码实现【】.mp4 [80.7 MB]
📁 Flink-day02
Flink-day02文档.zip [1.8 MB]
13-[掌握]-Source-Sink-自定义Sink【】.mp4 [20.3 MB]
05-[掌握]-Source-自定义Source-随机生成订单数据【】.mp4 [40.5 MB]
16-[重点]-Connectors-Flink整合Kafka-Sink-实时ETL【】.mp4 [25.4 MB]
17-[了解]-Connectors-Redis【】.mp4 [50.8 MB]
12-[掌握]-Source-Sink-基于控制台和文件【】.mp4 [14.7 MB]
03-[掌握]-Source-基于文件【】.mp4 [9.8 MB]
01-[理解]-流处理核心概念说明【】.mp4 [12.0 MB]
06-[掌握]-Source-自定义Source-实时加载MySQL数据【】.mp4 [39.9 MB]
09-[掌握]-Source-Transformation-拆分和选择【】.mp4 [25.5 MB]
04-[掌握]-Source-基于Socket【】.mp4 [17.8 MB]
02-[掌握]-Source-基于集合【】.mp4 [21.5 MB]
10-[掌握]-Source-Transformation-重平衡分区【】.mp4 [29.4 MB]
15-[重点]-Connectors-Flink整合Kafka-Source【】.mp4 [40.7 MB]
14-[了解]-Connectors-JDBC【】.mp4 [25.0 MB]
07-[掌握]-Source-Transformation-基本操作【】.mp4 [27.8 MB]
11-[掌握]-Source-Transformation-其他分区【】.mp4 [26.7 MB]
08-[掌握]-Source-Transformation-合并和连接【】.mp4 [24.8 MB]
📁 Flink-day06
Flink-day06必看.png [493.5 KB]
03-[掌握]-Flink高级特性和新特性-双流join-代码实现-2【】.mp4 [37.1 MB]
6-01-[面试]-Flink高级特性和新特性-双流join-分类和API【】.mp4 [47.5 MB]
10-[掌握]-Flink高级特性和新特性-FileSink【】.mp4 [39.3 MB]
08-[掌握]-Flink高级特性和新特性-End-to-End Exactly-Once-代码演示【】.mp4 [122.7 MB]
12-[了解]-Flink高级特性和新特性-FlinkSQL-整合Hive-CLI模式【】.mp4 [33.6 MB]
02-[掌握]-Flink高级特性和新特性-双流join-代码实现-1【】.mp4 [77.5 MB]
6-13-[了解]-Flink高级特性和新特性-FlinkSQL-整合Hive-代码演示【】.mp4 [32.3 MB]
09-[了解]-Flink高级特性和新特性-StreamingFileSink【】.mp4 [70.9 MB]
04-[面试]-Flink高级特性和新特性-End-to-End Exactly-Once-数据一致性分类【】.mp4 [11.5 MB]
06-[面试]-Flink高级特性和新特性-End-to-End Exactly-Once-如何实现Exactly-Once【】.mp4 [25.6 MB]
05-[面试]-Flink高级特性和新特性-End-to-End Exactly-Once-数据一致性含义详解【】.mp4 [42.7 MB]
07-[面试]-Flink高级特性和新特性-End-to-End Exactly-Once-如何实现End-To-End-Exactly-Once【】.mp4 [47.0 MB]
11-[了解]-Flink高级特性和新特性-FlinkSQL-整合Hive-说明【】.mp4 [26.8 MB]
📁 Flink-day03
Flink-day03必看.png [493.5 KB]
14-[了解]-Flink高级API-State-状态分类【】.mp4 [27.0 MB]
07-[理解]-Flink高级API-Time-Watermaker概念详解【】.mp4 [19.5 MB]
09-[掌握]-Flink高级API-Time-Watermaker-代码演示【】.mp4 [61.4 MB]
13-[了解]-Flink高级API-State-有状态计算和无状态计算【】.mp4 [23.9 MB]
08-[理解]-Flink高级API-Time-Watermaker图解【】.mp4 [26.6 MB]
16-[了解]-Flink高级API-State-OperatorState代码演示【】.mp4 [128.7 MB]
01-[了解]-Flink高级API-四大基石介绍【】.mp4 [6.1 MB]
04-[了解]-Flink高级API-Window-基于数量的滑动和滚动窗口【】.mp4 [22.1 MB]
02-[了解]-Flink高级API-Window-分类和API介绍【】.mp4 [32.1 MB]
10-[了解]-Flink高级API-Time-Watermaker-代码演示-理论验证【】.mp4 [72.5 MB]
06-[理解]-Flink高级API-Time-时间分类和事件时间的重要性及Watermaker的引入【】.mp4 [21.4 MB]
15-[了解]-Flink高级API-State-keyState代码演示【】.mp4 [61.8 MB]
03-[掌握]-Flink高级API-Window-基于时间的滑动和滚动窗口【】.mp4 [33.3 MB]
12-[了解]-Flink高级API-State-Flink中状态的自动管理【】.mp4 [12.9 MB]
11-[掌握]-Flink高级API-Time-Watermaker-outputTag-allowedlateness解决数据丢失【】.mp4 [38.3 MB]
05-[了解]-Flink高级API-Window-会话窗口【】.mp4 [17.9 MB]
📁 Flink-day01
14-[掌握]-Flink原理初探-TaskSlot和TaskSlotSharing【】.mp4 [19.4 MB]
05-[重点]-Flink安装部署-On-Yarn-两种提交模式【】.mp4 [42.9 MB]
03-[掌握]-Flink安装部署-Standalone独立集群模式【】.mp4 [65.9 MB]
13-[掌握]-Flink原理初探-角色分工-执行流程-DataFlow【】.mp4 [32.1 MB]
01-[了解]-Flink概述【】.mp4 [60.1 MB]
08-[掌握]-Flink入门案例-环境准备【】.mp4 [16.2 MB]
06-[重点]-Flink安装部署-On-Yarn-两种提交模式-演示【】.mp4 [66.9 MB]
09-[掌握]-Flink入门案例-代码实现-1-DataSet【】.mp4 [33.1 MB]
11-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-Lambda版【】.mp4 [28.8 MB]
02-[掌握]-Flink安装部署-local本地模式【】.mp4 [44.5 MB]
07-[了解]-Flink入门案例-前置说明【】.mp4 [22.0 MB]
04-[掌握]-Flink安装部署-Standalone-HA高可用集群模式【】.mp4 [72.8 MB]
00-[了解]-课程介绍【】.mp4 [22.3 MB]
12-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-On-Yarn【】.mp4 [44.4 MB]
15-[掌握]-Flink原理初探-执行流程图生成【】.mp4 [11.5 MB]
10-[掌握]-Flink入门案例-代码实现-2-DataStream流批一体-匿名内部类版【】.mp4 [71.7 MB]
📁 Flink-day07
15-[掌握]-Flink-VS-Spark-2【】.mp4 [41.9 MB]
08-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-实时统计频道热点【】.mp4 [50.7 MB]
07-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-数据扩宽【】.mp4 [118.9 MB]
14-[掌握]-Flink-VS-Spark-1【】.mp4 [145.9 MB]
01-[了解]-Flink多语言开发-PyFlink-介绍和环境准备【】.mp4 [26.3 MB]
03-[了解]-Flink多语言开发-ScalaFlink-介绍和环境准备【】.mp4 [17.9 MB]
09-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-实时统计频道PVUV【】.mp4 [69.8 MB]
05-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-程序入口类【】.mp4 [35.5 MB]
13-[掌握]-Flink监控与优化-内存管理【】.mp4 [8.8 MB]
04-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-数据准备【】.mp4 [48.5 MB]
06-[掌握]-Flink多语言开发-ScalaFlink-案例代码实现-json数据解析为样例类【】.mp4 [49.7 MB]
02-[了解]-Flink多语言开发-PyFlink-官方示例【】.mp4 [21.5 MB]
10-[掌握]-Flink监控与优化-Metrics监控-1【】.mp4 [38.1 MB]
12-[掌握]-Flink监控与优化-性能优化【】.mp4 [44.4 MB]
11-[掌握]-Flink监控与优化-Metrics监控-2【】.mp4 [32.1 MB]适合人群
- Flink开发者
- 大数据工程师
- 数据分析师
学习收获
祝您学习愉快!
学有所成,前程似锦!






