算子并行度和全局并行度
在Flink中,有两种类型的并行度:算子并行度(Operator Parallelism)和全局并行度(Global Parallelism)。
-
算子并行度(Operator Parallelism):
- 算子并行度指的是每个算子实例的并行度。在Flink中,每个算子(例如
map
、filter
等)都可以独立设置其并行度。这表示算子将会有多个并发的实例,每个实例处理输入数据的一个子集。你可以通过setParallelism
方法来设置算子的并行度。
javaDataStream<T> stream = ...; stream.map(new MyMapFunction()).setParallelism(4);
- 算子并行度指的是每个算子实例的并行度。在Flink中,每个算子(例如
-
全局并行度(Global Parallelism):
- 全局并行度是整个应用程序中并行度的一个全局设置。你可以通过
setParallelism
方法在执行环境或数据流上设置全局并行度。这会影响到所有算子,除非某个算子显式设置了自己的并行度。
javaStreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(3); DataStream<T> stream = ...; // 此处的 map 算子将会继承全局并行度,除非它自己显式设置了并行度 stream.map(new MyMapFunction());
- 全局并行度是整个应用程序中并行度的一个全局设置。你可以通过
总体而言,全局并行度是整个应用程序的默认并行度,而算子并行度是对某个具体算子的设置。算子并行度可以覆盖全局并行度,如果某个算子设置了独立的并行度,它将以自己的并行度为准。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2022-03-12 Flink如何保证端到端的一致性
2022-03-12 主流八大开源OLAP技术架构对比