算子并行度和全局并行度

在Flink中,有两种类型的并行度:算子并行度(Operator Parallelism)和全局并行度(Global Parallelism)。

  1. 算子并行度(Operator Parallelism):

    • 算子并行度指的是每个算子实例的并行度。在Flink中,每个算子(例如mapfilter等)都可以独立设置其并行度。这表示算子将会有多个并发的实例,每个实例处理输入数据的一个子集。你可以通过setParallelism方法来设置算子的并行度。
    java
    DataStream<T> stream = ...; stream.map(new MyMapFunction()).setParallelism(4);
  2. 全局并行度(Global Parallelism):

    • 全局并行度是整个应用程序中并行度的一个全局设置。你可以通过setParallelism方法在执行环境或数据流上设置全局并行度。这会影响到所有算子,除非某个算子显式设置了自己的并行度。
    java
    StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(3); DataStream<T> stream = ...; // 此处的 map 算子将会继承全局并行度,除非它自己显式设置了并行度 stream.map(new MyMapFunction());

总体而言,全局并行度是整个应用程序的默认并行度,而算子并行度是对某个具体算子的设置。算子并行度可以覆盖全局并行度,如果某个算子设置了独立的并行度,它将以自己的并行度为准。

posted @   guoyu1  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2022-03-12 Flink如何保证端到端的一致性
2022-03-12 主流八大开源OLAP技术架构对比
点击右上角即可分享
微信分享提示