组件堆栈
作为软件堆栈,Flink是一个分层系统。堆栈的不同层构建在彼此之上,并提高它们接受的程序表示的抽象级别:
在运行时层中的形式接收节目JobGraph。JobGraph是一个通用的并行数据流,具有消耗和生成数据流的任意任务。
二者的数据流中的API和数据集API生成通过单独的编译过程JobGraphs。DataSet API使用优化器来确定程序的最佳计划,而DataStream API使用流构建器。
JobGraph根据Flink中提供的各种部署选项执行(例如,本地,远程,YARN等)
与Flink捆绑在一起的库和API生成DataSet或DataStream API程序。这些是用于逻辑表的查询的表,用于机器学习的FlinkML和用于图形处理的Gelly。
您可以单击图中的组件以了解更多信息。