1、基本概念

  • tm_num: taskmanager的个数。实际值为:count(taskmanager)=max{tm_num, max_used_slot/tm_slot}
  • tm_memory: 每个tm 分配的内存,单位:MB
  • alloc_memory: 作业申请总的内存,alloc_memory = tm_memory * tm_num
  • used_memory: 作业使用的内存数
  • tm_cores: 每个tm 分配的vcore数
  • alloc_cores: 作业申请的总vcore数,alloc_cores = tm_num * tm_cores
  • used_cores: 作业使用的vcore数
  • tm_slot: 每个taskmanager的slot数,即每个 task manager 可以并发执行多少 tasks
  • task_slots: 每个task最大的并发度, task_slots = tm_slot * tm_num
  • max_used_slot: 作业最大能利用的并发度。对于pyjstorm作业,max_used_slot = max{partition, thread_num}, 作业最大能利用的并发度, 其中,partition 指的是作业中所有topic的最大partition,thread_num 是bolt的并发,如果没有bolt,可以认为是0。task_slots >= max_used_slot 作业才能跑起来。对于原生作业,max_used_slot 为设置的parallelism最大值,如果没有设置,max_used_slot = task_slots
  • available_task_slots: 未能利用的slot,available_task_slots = task_slots - max_used_slot。未利用的slot相当于是slot占着资源在空跑,这样看着作业申请了大量资源,实际是没法进行运行task的。

2、cpu 调整

  • cpu浪费:如果作业使用的cpu远小于分配的cpu, 可以通过调小tm_cores 或者调小tm_num,从而减小总的申请的vcore数。
  • cpu不足:如果作业使用的cpu大于分配的cpu, 可以通过调大tm_cores 或者调大tm_num的同时加大并发,从而加大总的申请的vcore数。

3、内存调整

  • 内存浪费:如果作业使用的内存远小于分配的内存, 可以通过调小tm_memory 或者调小tm_num的同时调小并发,从而减小申请总的内存。
  • 内存不足:如果作业使用的内存接近或大于分配的内存, 可以通过调大tm_memory 或者调大tm_num的同时加大并发,从而加大申请总的内存。

4、slot 调整

如果available_task_slots 实际是没有使用的slot,如果该值很大,说明资源浪费严重。请调小tm_num 或 调小tm_slot,从而减小总的task_slots,减小资源浪费。

5、作业启动优化

比如,作业的最大partition为32, thread_num = 100, 即max_used_slot = max{partition, thread_num} = 100。这时候,task_slots = 100作业就可以启动,比如tm_num = 10, tm_slot=10。但是如果想加快作业启动,可以多分配一两个tm,设置tm_num=12, tm_slot=10。这样稍微多申请一点资源是运行的。

6、优化

如何在总资源不变的情况下,优化作业资源呢:减小单个tm的资源,加大tm数。减小内存tm_memory,减小tm_cores,加大tm_num, 加大并发thread_num。保证alloc_memory 和 alloc_cores不变即可。

Flink任务资源设置相关推荐

  1. 8s保留cpu设置_使用资源设置控制CPU资源

    如果即使在前面讨论过的所有方案之后也无法重新平衡CPU负载或提高处理器效率,那么可能还有一些原因是保持主机CPU仍然饱和​​. 它可以是资源池及其对VM的资源分配. 许多应用程序(例如批处理作业)通过 ...

  2. .NET MAUI 安卓 UI 资源设置

    本文主要介绍使用 MAUI 开发安卓应用时,如何更换和处理 UI 资源:应用名称,图标,主题配色,状态栏,闪屏. 文章目录 1. 背景 2. 资源设置 2.1 项目创建 2.2 应用名称 2.3 应用 ...

  3. Oracle平均成本差异如何处理,小李飞刀系列之Oracle EBS期间平均成本(PAC)--生产成本计算(二)资源设置...

    在上一篇文章中,我们讨论了Oracle EBS成本计算中成本要素和层次的概念.本篇文章开始将对成本要素"资源"进行讨论. 在进行资源设置时(如图1所示),对于PAC来说,下面几处的 ...

  4. 大数据之flink共享资源槽

    算子链: 为方便执行,Flink将不同算子的子任务(subtask)链接到一个任务里,每一个任务在一个线程中执行.这是一个非常有用的优化方式,它减小了进程间数据交换和缓存的开销,而且在减少延迟同时增加 ...

  5. 【springboot】静态资源设置缓存时间

    前言 springboot 2.0.0.RELEASE springboot中(其实是spring)使用了Ant-style 正则表达式.形如:/**. ResourceHandlers 路径就可以使 ...

  6. 【Flink】 Flink 应用资源分配问题排查思路

    1.概述 转载:https://blog.csdn.net/weixin_43970890/article/details/102483720 如果 Flink 应用不能正常启动达到 RUNNING ...

  7. android 设置图片资源,如何使用DataBinding将Image资源设置为ImageView

    像这样设置图像, 答案: https : //stackoverflow.com/a/36941125/703225 定义: @BindingAdapter({"android:src&qu ...

  8. 微信小游戏 资源服务器,Cocos Creator 微信小游戏 远程资源设置

    版本:2.3.4 参考: cocos教程:发布到微信小游戏 因为微信小游戏有包体大小限制. 主包4M 分包最大4M 一共最多16M 那么假如我们的游戏有个20M,50M,那就放不下了.只能放到远程服务 ...

  9. Windows Server 2008共享资源设置步骤详解

    很多人认为访问共享资源很简单,只要先找到共享资源,之后双击共享目标,再登录进去就可以进行访问操作了.事实上,这其中的每一步操作都可能会受到Windows系统的限制;这不,当我们尝试访问Windows ...

  10. vertx rest 跨域_在基于简单Vertx Rest的应用程序上为REST资源设置基本响应HTTP标头...

    vertx rest 跨域 我是Vert.x的新手,但作为Java开发人员(辛勤工作),与NodeJS或其他任何基于Reactor的框架/库相比,我觉得它更加有趣并且很有前途. 因此,我正在使用Ver ...

最新文章

  1. SHELL中的三神器:管道、重定向、backtick
  2. 服务器无限火力时间,LOL无限火力2018时间表6月具体开启时间 无限火力模式什么时候出...
  3. html js页面传参
  4. double free or corruption的原因
  5. Linux 5.7 将支持国产 RISC-V 芯片 K210
  6. bat 变量 文件内容第一行_VBA基础入门(38)FSO生成bat文件后执行的实例
  7. 【NOI2019模拟2019.7.4】朝夕相处 (动态规划+BM)
  8. 5 批量更新多条记录_如何使用 F12 开发者工具自动批量删除新浪微博
  9. solo什么意思中文,solo是什么意思,了解一下什么是solo
  10. mysql可视化工具有哪些_有哪些用过一次就爱上的可视化工具?
  11. inception mysql 使用_mysql 审核引擎 goInception 的基本使用
  12. webpack,vue中定义的别名怎么在模板, css sass less的图片地址上使用
  13. vi 和 vim 的区别
  14. An动画优化之遮罩层动画
  15. matlab由滤波的系数得到传输函数 设计带通滤波器 design fdatool设计IIR带通滤波器
  16. oracle redo查询,ORACLE UNDO REDO查看
  17. Alarm Clock Pro for mac(闹钟和时间管理工具)
  18. Alpha版本冲刺(七)
  19. x50pro怎么升级鸿蒙系统,被央视点赞的vivo X50 Pro拍照如何?实测告诉你
  20. 公司职位英文及缩写大全

热门文章

  1. date.timezone 设置默认地区时间
  2. 开心!奥运门票在手 :)
  3. 山科c语言考试题库,山科大C语言不完全题库讲解.doc
  4. 4515DO-DS3BI010DS压差传感器气流检测
  5. linux下文件遍历的批处理操作——签…
  6. Python之循环绘图
  7. 【Python】03-15种字符串操作
  8. python中sint的意思_PLC里的SINT是什么意思
  9. 做Windows7的超级管理员
  10. Doris对接hive数据源以及Doris版本滚动升级实操