Flink自动缩放和最大并行度

时间:2018-07-02 15:42:37

标签: apache-flink flink-streaming

function f(a,b) { switch (arguments.length){ case 1:{ console.log("b omitted"); return; } case 0:{ console.log("a and b omitted"); return; } } } f();//a and b omitted f(1);//b omitted 上从Javadoc引用: 最大并行度指定动态缩放的上限。

这里确切地说是动态缩放是什么意思?我找不到操作员自动缩放的任何经验证据:无论您有多少空闲插槽,无论StreamExecutionEnvironment.setMaxParallelism有多少,以及有多少逻辑分区,实际的并行度(根据Web ui )始终是通过 a maxParallelism

设置的

此外,据此,最受接受且从未挑战的答案https://stackoverflow.com/a/43493109/2813148 在Flink中没有动态缩放。

那么有吗?还是javadoc具有误导性(或者那里的“ dynamic”是什么意思)? 如果没有,是否有此功能的计划?

1 个答案:

答案 0 :(得分:3)

Flink(在1.5.0版中)尚不支持动态缩放。

但是,可以通过采用savepoint,停止正在运行的作业并以已调整的(较小或较大)并行度重新启动作业来手动缩放作业(或通过外部服务)。但是,新的并行度最多只能是先前配置的最大并行度。作业开始后,最大并行度被保存到保存点中,无法再更改。

支持动态缩放。从1.5.0版(2018年5月发布)开始,Flink支持从资源管理器(例如Yarn和Mesos)进行动态资源分配。这是迈向动态缩放的重要一步。实际上,该功能的实验版本已于demonstrated at Flink Forward SF 2018于2018年4月发布。