Flink作业执行的第一步:DataFlow graph的构建
本文重点
在前面的课程中,我们学习了算子的概念,我们可以将Flink程序简单的理解为算子的逻辑组合,数据在一系列算子操作中流动,最终完成数据的处理。在运行的时候,客户端会将所有的算子按照逻辑顺序连接起来构成一张图,这张图就叫做“逻辑数据流”(logical dataflow),或者叫“数据流图”(DataFlow graph)。
DataFlow graph
DataFlow graph的构建是Flink作业执行的第一步,它是在Flink程序被提交到Flink集群之前完成的。
Flink中的DataFlow graph是指Flink程序的执行计划,它描述了Flink作业中的数据流以及数据流之间的转换和操作。DataFlow graph是Flink作业的逻辑表示,通过它可以清晰地了解Flink程序的数据流动和处理逻辑。
在Flink中,DataFlow graph(数据流图)是一个表示Flink程序执行流程的有向无环图(DAG)。它由一组连接的算子(operators)和数据流边(stream edges)组成。DataFlow graph描述了Flink程序中的数据流,其中每个算子代表一个数据转换操作,算子之间的数据流边表示数据在算子之间的传递。
在DataFlow graph中,以一个或多个源(source)开始,并以一个或多个汇(sink)结束。在数据源算子和输出算子之间还可以包含一些特殊的算子,比如转换算子用