Flink -- 并行度

1、并行度:

对于一个Flink任务是有Source、Transformation和Sink等任务组成,一个任务由多个并行实例来执行,一个任务的并行实例数目被称为该任务的并行度。

2、TaskManager和Solt

Flink是一个分布式流处理框架,它基于TaskManager和Slot来实现任务的执行。TaskManager是Flink中负责运行任务的工作进程,而Slot是TaskManager中可用的资源。

TaskManager在Flink集群中分布式运行,每个TaskManager可以运行多个Slot。Slot是TaskManager中的资源分配单位,每个Slot可以运行一个Flink任务。TaskManager会根据需要动态分配Slot,以满足任务执行的需求。

3、共享资源槽:

1、 对于一个Task solt负责执行一个task这种部署方式来说,产生的问题是资源的浪费,此时Flink就有就共享资源槽。

2、共享资源槽:Flink并不是将task合并,而是上游的task和下游的task可以共享一个槽位,所以Flink需要使用多少资源和task的数量没有关系,而是和节点的最大并行度有关系,因为有几个并行度就需要几个槽位。

4、并行度的设置的方式:

1、env.setParallelism(2),设置并行度为2(Execution Environment Level(执行环境级别))

2、可以在提交任务的时候指定并行度,通过-p来指定( Client Level(客户端级别))

复制代码
flink run-application -t yarn-application  -p 2 -c flink.core.Demo1WordCount flink-1.0.jar

3、可以对每一个算子都单独的设置并行度(Operator Level(算子级别))

4、System Level 一般不使用

复制代码
在系统级可以通过设置flink-conf.yaml文件中的parallelism.default属性来指定所有执行环境的默认并行度。

三者的优先级是:3---1---2
flink任务需要的资源和task数量无关,和并行相关,一个并行度需要一个资源(slot)
并行度大小的设置与数据的吞吐量有关
相关推荐
赵部长风向标1 小时前
在本地生活赛道,如何打造属于自己的业务护城河?
大数据
青云交1 小时前
Java 大视界 -- Java 大数据在智能教育学习社区互动模式创新与用户活跃度提升中的应用(426)
java·大数据·学习·flink 实时计算·智能教育社区·互动模式创新·用户活跃度
snowful world4 小时前
flink实验三:实时数据流处理(踩坑记录)
大数据·flink
B站_计算机毕业设计之家4 小时前
基于大数据的短视频数据分析系统 Spark哔哩哔哩视频数据分析可视化系统 Hadoop大数据技术 情感分析 舆情分析 爬虫 推荐系统 协同过滤推荐算法 ✅
大数据·hadoop·爬虫·spark·音视频·短视频·1024程序员节
面向星辰5 小时前
day07 spark sql
大数据·sql·spark
北邮-吴怀玉6 小时前
2.2.2.3 大数据方法论与实践指南-开源服务跟踪工具对比
大数据·开源
亚远景aspice7 小时前
亚远景热烈祝贺保隆科技通过ASPICE CL2评估
大数据·人工智能·物联网
赵谨言8 小时前
基于python大数据的城市扬尘数宇化监控系统的设计与开发
大数据·开发语言·经验分享·python
程序员小羊!8 小时前
Flink状态编程之算子状态(OperatorState)
大数据·flink
TaoSense9 小时前
Milvus向量数据库介绍
大数据·人工智能