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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM