处理层:基于Yarn|K8s调度引擎和HDFS|S3存储组件,提供完整的 事件驱动 、 时间语义 、 流&批一
体 的Flink计算服务。
应用层:输出端提供应用系统、事件日志、存储系统等数据对接。
2 Flink编程模型了解吗
1)Flink分层模型
Flink底层通过封装和抽象,提供四级分层编程模型,以此支撑业务开发实时和批处理程序。
结合示意图,我们由下而上进行介绍。
Runtime层: Flink程序的最底层入口。提供基础的核心接口完成流、状态、事件、时间等复杂操
作,功能灵活但使用成本较高,一般面向源码研发人员。
DataStream/Dataset API层: 这一层主要面向开发者。基于Runtime层抽象为两类API,其中
DataStream API处理实时流程序;Dataset API处理批数据程序。
Table API: 统一DataStream/DataSet API,抽象成带有Schema信息的表结构API。通过Table操
作和注册表完成数据计算,支持与DataStream/Dataset相互转换。
SQL: 面向数据分析和开发人员,抽象为SQL操作,降低开发门槛和平台化。
2)Flink计算模型
Flink的计算模型和Spark的模型有些类似。包含输入端(source)、转换(Transform)、输出端
(sink)。
source端 :Flink程序的输入端,支持多个数据源对接
Transformation :Flink程序的转换过程,实现DataStream/Dataset的计算和转换
sink端 : Flink的输出端,支持内部和外部输出源
评论