1. 计算公式
先看计算公式:(结果向上取整)
TaskManager个数 = Job的最大并行度 / 每个TaskManager分配的任务槽数
(注意老版本有参数-yn / --yarncontainer 来指定运行的 TaskManager个数,已经失效)
再来看看什么是并行度和任务槽数以及他们是如何确定的。
2. 并行度(parallelism)
一个Flink程序由多个Operator组成(source、transformation和 sink)。
一个Operator由多个并行的Task(线程)来执行, 一个Operator的并行Task(线程)数目就被称为该Operator(任务)的并行度(Parallel)。即并行度就是相对于Operator来说的。
并行度的指定,可以有4种级别来设置Operator的并行度
1) Operator Level(算子级别)
operator.setParallelism(3)
2)Execution Environment Level(执行环境级别)
streamExecutionEnvironment.setParallelism(3)
3)Client Level(客户端级别)
./bin
版权归原作者 sf_www 所有, 如有侵权,请联系我们删除。