flink并行度设置

812 阅读1分钟

Flink的并行度设置 task的parallelism可以在Flink的不同级别上指定。四种级别是:算子级别、执行环境(ExecutionEnvironment)级别、客户端(命令行)级别、配置文件(flink-conf.yaml)级别

  • 每个operator、data source或者data sink都可以通过调用setParallelism()方法来指定

  • 运行环境的默认并发数可以通过调用setParallelism()方法来指定。env.setParallelism(3);运行环境的并发数可以被每个算子确切的并发数配置所覆盖。

  • 对于CLI客户端,并发参数可以通过-p来指定

  • 影响所有运行环境的系统级别的默认并发度可以在./conf/flink-conf.yaml的parallelism.defaul项中指定。不建议

当然,你也可以设置最大的并行度

  • 你可以通过调用setMaxParallelism()方法来设置最大并发度。

Flink如何确定TaskManager个数?答案:Job的最大并行度除以每个TaskManager分配的任务槽数 Flink on YARN时,TaskManager的数量就是:max(parallelism) / yarnslots(向上取整)。例如,一个最大并行度为10,每个TaskManager有两个任务槽的作业,就会启动5个TaskManager

转载于 www.cnblogs.com/maoxiangyi/…