Slot
Slot是空间与线程的结合体,该结合体负责执行任务,一个TaskManager中Slot的默认数量,是这个TaskManager所在机器上的CPU核数,系统创建一个TaskManager的时候,会为该TaskManager分配一个内存空间,这片内存空间将被这些slot平分,例如:系统为该机器上的TaskManager实例分配了9G的内存,该TaskManager设置了slot数量为3,那么每个slot占据的内存空间就是3G,这是从空间的角度阐述slot,如果从线程的角阐述slot,那么slot数量为3,则表示当前TaskManager中有三个slot线程在运行任务(注意此处任务两个字,下面介绍任务的概念)

任务
一个 Flink 程序由多个Source +多个Transformation+多个Sink组成,其中多个Source中的任意一个Source,叫做任务,同理,多个Transformation中的任意一个Transformation也叫做任务,多个Sink中的任意一个Sink也叫做任务,从这句话可以得知:任务类型分为三种,分别是source,transformation,sink

再说slot
一个slot中,同一个类型的任务,只能运行1个,比如一个slot中可以运行1个source+1个transformation+1个sink,也可以只运行1个source,但是不可以运行2个source

parallelism
每种任务类型,都有setParallelism方法,该方法签名如下

// 一定要注意这个参数p,是会运行在所有机器上的,而不是一台机器
T.setParallelism(int p);

一定要注意,这个参数p是不可以超过slot总数的**(每台机器上的slot相加的总和)**
假设T是source,p=3,则说明有3个source分别在3个不同的slot中运行**(注意这三个slot不一定是在同一台机器上)**
假设T是sink,p=4,则说明有4个sink分别在4个不同的slot中运行,而前面3个装有source的slot,很有可能就是这4个中的3个,也有可能不是

根据上文可知,如果我想设置3个source,3个transformation,3个sink,则代码应该如下

source.setParallelism(3);
transformation.setParallelism(3);
sink.setParallelism(3);

这时为了更方便,可以在flink启动环境上直接设置3即可,代码如下

StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(3);

我们也可以在Flink客户端(JobManager)启动的时候,使用命令行来进行设置,但是我从来没用过,不喜欢这种方式,所以此处不贴代码

当然,也可以通过Flink的flink-conf.yaml配置文件来进行配置,可以将taskmanager.numberOfTaskSlots的值设置为T,注意,这个T强烈推荐是你的CPU核数,不是可用核数

Flink-slot与parallelism相关推荐

  1. 1.21.Flink Slot和并行度(parallelism)\Flink的并行度由什么决定的?\Flink的task是什么?\slot和parallelism

    1.21.Flink Slot和并行度(parallelism) 1.21.1.Flink的并行度由什么决定的? 1.21.2.Flink的task是什么? 1.21.3.slot和paralleli ...

  2. Flink中任务的并发:slot和parallelism

    Flink中任务的并发:slot和parallelism 1 任务的执行流程 Flink有三大组件:client.JobManager.TaskManager.client将用户提交的任务解析成执行流 ...

  3. 一篇由flink akka timeoutException引发的slot和parallelism

    首先来看下程序错误信息: caused by: akka.pattern.AskTimeoutException: Ask timed out on [Actor[akka://flink/user/ ...

  4. Flink(十一):Parallelism 、Slot 简介

    目录 一.简介 二.Slot  简介 三.Parallelism  简介 四.Parallelism 与Slot 关系 一.简介 TaskManager(也称为 worker)执行作业流的 task, ...

  5. Flink Task、Sub-Task、task slot和parallelism

    Task:物理图的节点.任务是工作的基本单元,由Flink的运行时执行.任务精确地封装运算符或运算符链的一个并行实例.Task是逻辑概念,一个Operator就代表一个Task(多个Operator被 ...

  6. Flink中TaskManager、Slot和Parallelism

    概念简介 JobManager:负责接收Flink Client提交的Job,并将Job分发到TaskManager执行,一个JobManager包含一个或多个TaskManager. TaskMan ...

  7. 【Flink】The parallelism of non parallel operator must be 1

    flink学习过程中遇到The parallelism of non parallel operator must be 1问题 Exception in thread "main" ...

  8. flink sql设置并行度_《从0到1学习Flink》—— Flink parallelism 和 Slot 介绍

    前言 之所以写这个是因为前段时间自己的项目出现过这样的一个问题: Caused by: akka.pattern.AskTimeoutException: Ask timed out on [Acto ...

  9. flink 不设置水印_从0到1学习Flink—— Flink parallelism 和 Slot 介绍

    前言 之所以写这个是因为前段时间自己的项目出现过这样的一个问题: 1Caused by: akka.pattern.AskTimeoutException: 2Ask timed out on [Ac ...

  10. 《从0到1学习Flink》—— Flink parallelism 和 Slot 介绍

    2019独角兽企业重金招聘Python工程师标准>>> 前言 之所以写这个是因为前段时间自己的项目出现过这样的一个问题: 1 2 3 Caused by: akka.pattern. ...

最新文章

  1. 高考后家有学计算机,2021高考热门专业将有大改动,计算机专业永远的神,榜首才是真黑马...
  2. 2017百度之星程序设计大赛 - 初赛(A)数据分割
  3. 大型分布式系统需要考虑的问题
  4. 正则表达式 - 去掉乱码字符/提取字符串中的中文字符/提取字符串中的大小写字母 - Python代码
  5. CSS基础「二」复合选择器 / 元素显示模式 / 背景 / 三大特性
  6. NATSserver配置具体解释
  7. 高通-物理专线2.0新版资费计划
  8. 在一个字符串中找到第一个只出现一次的字符。
  9. HTML5七夕情人节表白网页制作【满天星空3D相册】HTML+CSS+JavaScript 3D动态相册网页代码
  10. 电动汽车用内置式永磁同步电机基于查询表 的矢量控制算法, 自动生成满足 MTPA
  11. excel怎么批量插行_excel怎么批量隔行插入一行空白行?
  12. An中的共轭类的个数
  13. 【读书笔记】《JS函数式编程指南》(一)
  14. 如何计算阻力系数与升力系数【翻译】
  15. 常见邮件服务器(接收服务器和发送邮件服务器)地址
  16. ISTQB- TTA大纲
  17. android 齿轮动画,Android(Animation): 一直转个不停的齿轮
  18. NestedScrollView/ScrollView嵌套Recyclerview,导致Recyclerview抢占焦点,置顶了, 修改好后,引起Edittext又不能点击问题处理
  19. 数学中学生测试软件,欧拉初中数学软件
  20. 《C++程序设计:原理与实践》Chapter10练习

热门文章

  1. 这十一个副业在家就可以完成,疫情在家也有收入,建议收藏
  2. 单招计算机试题出处,2017年职业技术学院单独招生综合素质测试试题库及答案...
  3. 点亮第一颗LED灯—树莓派篇
  4. python 获取金融数据_class类在python中如何获取金融数据
  5. 数字货币正确的交易理念——第四章:操作形态的重要意义
  6. 工程流体力学笔记暂记30 (管道水力计算)
  7. python程序设计从基础到开发课后题答案夏敏捷_[转载] python程序设计应用教程夏敏捷答案第八章_Python程序设计:从基础到开发...
  8. boost库学习④:boost::asio::buffer
  9. 安卓开发如何避免被裁以及快速找到工作?(强力推荐,fluttertextfield光标
  10. 服务器挂微信断线,微信服务器宕机之后......