网站开发者yotoon,广西网站建设-好发信息网,图文网站建设,洛阳最新消息1、Task
flink中每个算子就是一个Task#xff0c;比如flatMap、map、sum是一个Task。
2、SubTask
算子有几个并行度SubTask的数量就是几#xff0c;比如
3、算子并行度
算子并行度指的是每个算子的并行度#xff0c;可用env.setParallelism(1);设置所有算子的并行度比如flatMap、map、sum是一个Task。
2、SubTask
算子有几个并行度SubTask的数量就是几比如
3、算子并行度
算子并行度指的是每个算子的并行度可用env.setParallelism(1);设置所有算子的并行度也可以对每个算子单独设置通过降数据流划分为多个并行的算子实例SubTask可实现数据的并行处理。
一个Job的并行度是算子并行度的最大值比如一个Job中有map算子并行度是2、filter算子并行度是4则任务并行度就是4。
总结Flink中每一个算子都可以成为一个独立任务(task)。
4、分区、分组
分区使用keyBy函数目的是为了进行并行计算通过hash(key)%并行度 来把数据分到不同分区然后并行计算提报计算效率。 由于keyby使用了取模运算所以同一个区分可能存在不同分组的数据如下图北京和山东在同一个分区但是在不同分组。 keyby之后使用sum函数会对不同分区内的数据并行计算同一个并且同一个分组内的数据才会进行sum运算。