微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flink的并行度设置

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

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

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

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

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


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

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


Flink如何确定TaskManager个数?答案:Job的最大并行度除以每个TaskManager分配的任务槽数

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




参考:

https://cloud.tencent.com/developer/article/1500184

https://www.jianshu.com/p/9c301ff1a9b2

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐