《Apache Flink 案例集(2022版)》——1.数据集成——小米-Flink 流批一体在小米的实践(1) https://developer.aliyun.com/article/1228472
3、作业调度
小米在作业调度方面也做了一些尝试。如上图左边这段 SQL,在离线调度模式下它是一个批作业,但在实时调度下它就是一个流作业。在批流混合的调度下,会先启动批作业,执行完成之后再启动流作业。
批流混合对于调度器来说是实时的作业。主要的改动是在 Flink SQL 的模板作业中先启动一个 SQL的批作业,执行完成之后再启动 Flink SQL 的实时作业。
4、Flink生态
Flink 插件化的 connector 设计可以非常方便地拓展不同的 connector。无论是 Flink 官方还是其他社区,都提供了非常多的 connector 支持。小米内部也实现了很多种类 connector,只有完善了 Flink 的生态建设,它跨平台设计的计算能力才能真正体现出来。
应用场景
大多公司都有数据导入和导出的需求,基于 Flink 丰富的生态,可以非常方便地实现不同场景的数据集成,主要包括离线集成、实时集成以及批流混合数据集成。 1. 离线的数据集成 。
1. 离线的数据集成
小米使用 Flink SQL Batch 作业替换了之前的 Data X,借助 Flink 的生态,可以非常方便地实现不同系统数据导入导出的需求,也获得了更丰富的 Source Sink 生态。同时还基于 Flink SQL 可以非常方便地实现字段的映射,同时 Flink SQL 作为分布式框架,可以很方便提供并发导数的需求。
《Apache Flink 案例集(2022版)》——1.数据集成——小米-Flink 流批一体在小米的实践(3) https://developer.aliyun.com/article/1228460