Flink的架构
Apache Flink是一个分布式流处理框架,它支持批处理和流处理,并提供了高效的状态管理和容错机制。Flink的架构设计非常灵活,可以根据应用程序的需求进行定制。Flink的架构可以分为三层:API层&libary层、运行时层和物理部署层。
物理部署层
该层主要涉及Flink的部署模式,目前 Flink 支持多种部署模式:本地、集群Standalone/YARN)、云(GCE/EC2)、Kubenetes。
运行时层
运行时层,该层提供了支持Flink计算的全部核心实现,该层主要负责对上层API层的不同接口提供基础服务。
支持分布式Stream作业的执行、JobGraph到ExecutionGraph的映射转换、任务调度等。将DataSteam和DataSet 转成统一的可执行的 Task Operator。
API层&libary层
API层&libary层是Flink的顶层,整个API层&libary层可以继续分为三层