Flink 实时数仓实战
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_69009747/flink-real-time-warehouse。
技能介绍
实时数仓落地时,常见难点不是单个组件,而是链路关系:MySQL 变更如何进入数据湖、ODS 到 ADS 如何分层、流批一体是否要维护两套 SQL、生产环境哪些参数容易踩坑。该技能面向大数据工程师和后端转数仓的人,把这些问题组织成可复现的实战路径。
要解决的问题
- 数据接入:把 MySQL 增量变更稳定同步到湖表,而不是只给一个静态 ETL 示例。
- 分层建模:明确 ODS、DWD、DWS、ADS 的职责、存储格式和更新频率。
- 流批一体:用 Flink 物化表减少实时逻辑和批处理逻辑分离维护的成本。
- 生产调优:给出参数清单和常见坑,避免只在本地跑通就上线。
工作方式
技能基于 Docker Compose 提供 MySQL -> Kafka -> Flink -> Paimon -> StarRocks 的端到端环境。核心流程是先用 Flink CDC 订阅 MySQL binlog,将变更写入 Paimon ODS 表;再按主键表或聚合表构建 DWD、DWS;ADS 面向查询和业务展示,落到 StarRocks 或 Doris。资源里包含 Flink SQL 模板、CDC 配置、分层规范、物化表语法、调优指南和面试 QA。物化表依赖 Flink 1.20+,可通过 FRESHNESS 在实时刷新和凌晨批回刷之间切换。
适用边界
本地 Paimon 更适合开发测试,生产建议使用 HDFS/S3。需要确认 MySQL 已开启 binlog_format=ROW,并提前了解镜像拉取和硬件资源要求。
使用场景
- 用 Docker Compose 拉起 MySQL、Kafka、Flink、Paimon、StarRocks 链路并验证服务。
- 把 MySQL 订单表变更通过 Flink CDC 写入 Paimon ODS,排查 binlog 同步问题。
- 按 ODS、DWD、DWS、ADS 建实时宽表和聚合表,供大屏查询订单量。
- 用 Flink 物化表切换实时刷新和凌晨全量回刷,减少两套 SQL。
适合人员
- 大数据工程师:要搭一套可复现的 Flink 实时数仓链路并做生产调优。
- 数仓开发者:要完成 MySQL 入湖和 ODS 到 ADS 分层建模。
- 后端转大数据:要理解 CDC、Paimon、StarRocks 在实时仓库中的角色。
- 面试备战者:要复习 Flink 高频题、物化表和流批一体场景。