怎么确定一个Flink job的资源

Slots && parallelism

一个算子的parallelism 是5 ,那么这个算子就需要5个slot,

公式 :一个算子的parallelism 是n ,那么这个算子就需要5个n

通俗理解:几个并行度,就是有几个线程处理。

如何计算Slot

如果不设置SlotSharingGroup,那么需要的Slot数为应用的最大并行度数。

设置slot就是设置线程数。

设置parallelism 的依据是什么?

一个算子到底设置几个(parallelism)线程执行呢?

solt 是用来对taskmanager内存进行平均分配的,每个solt内存都相同,也就是每一个并行度的内存是一样的。

如果一个算子需要的内存多,就多设置几个并行度。

如果一个算子需要的内存少,就少设置几个并行度,省下来的slot让给别人。因为slot是可以共享的。

怎么给一个任务分配 slot和内存?

假设有以下条件

  1. 集群

假设一个flink session 的一个slot 是2G内存.(如下脚本)

  1. 任务

你有50G的数据要处理

分配多少slot和内存是测试出来的,看哪个配置速率更快,以达到资源的合理利用.

假设 准备给他20G内存.

那么就是 20/2(一个slot 是2G内存) = 10 slot

于是就是slot 10 个, 内存是20g. parallelism 是10

脚本

/data/flink-1.10.1/bin/flink run \
-yid $application_id \
-yD env.java.opts="-XX:+UseG1GC" \
-c xxxxx.mainClass \
/data/hadoop/data/xxxxx.jar

启动yarn-session 脚本

#!/bin/bash

/data/flink-1.10.1/bin/yarn-session.sh \
-s 4 \
-jm 1g \
-tm 8g \
-d \
-ynm yarn-flink 一个taskmanager 8G内存,共4个slot 那么,一个slot就是2G内存.

怎么确定一个Flink job的资源的更多相关文章

  1. 一个flink作业的调优

    最近接手了一个flink作业,另外一个同事断断续续有的没的写了半年的,不着急,也一直没上线,最近突然要上线,扔给我,要调通上线. 现状是: 1.代码跑不动,资源给的不少,但是就是频繁反压. 2.che ...

  2. 构建一个flink程序,从kafka读取然后写入MYSQL

    最近flink已经变得比较流行了,所以大家要了解flink并且使用flink.现在最流行的实时计算应该就是flink了,它具有了流计算和批处理功能.它可以处理有界数据和无界数据,也就是可以处理永远生产 ...

  3. 3、flink架构,资源和资源组

    一.flink架构 1.1.集群模型和角色 如上图所示:当 Flink 集群启动后,首先会启动一个 JobManger 和一个或多个的 TaskManager.由 Client 提交任务给 JobMa ...

  4. Flink从入门到放弃(入门篇2)-本地环境搭建&构建第一个Flink应用

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  5. Nginx系列2:用Nginx搭建一个可用的静态资源Web服务器

    上一节中编译好自己的nginx服务器后, 现在要对nginx.conf文件进行配置,搭建一个可用的静态资源Web服务器 1.放入可访问的html文件到nginx文件夹下,如图1所示: 这里我放入的是一 ...

  6. [转载]android工程中引入另一个工程中的资源

    原文地址:android工程中引入另一个工程中的资源作者:87fayuan 在项目中可能遇到这样的问题:项目过大,于是细分为N个子模块来做,每个模块都是不同的工程.涉及到activity传数据时,可以 ...

  7. 在 Cloudera Data Flow 上运行你的第一个 Flink 例子

    文档编写目的 Cloudera Data Flow(CDF) 作为 Cloudera 一个独立的产品单元,围绕着实时数据采集,实时数据处理和实时数据分析有多个不同的功能模块,如下图所示: 图中 4 个 ...

  8. Flink使用(二)——Flink集群资源规划

    前言 本文主要译自Flink Forward 2017的柏林站中Robert Metzger的有关集群规划的How to size your flink cluster一文.该文中主要是考虑网络资源, ...

  9. 实现iOS图片等资源文件的热更新化(五): 一个简单完整的资源热更新页面

    简介 一个简单的关于页面,有一个图片,版本号,App名称等,着重演示各个系列的文章完整集成示例. 动机与意义 这是系列文章的最后一篇.今天抽空写下,收下尾.文章本身会在第四篇的基础上,简单扩充下代码, ...

随机推荐

  1. 工作一年半被裁掉,机缘巧合拿到阿里P7offer,得亏我看过这份“突击”面试宝典

    前言 不论是校招还是社招都避免不了各种⾯试.笔试,如何去准备这些东⻄就显得格外重要.不论是笔试还是⾯试都是有章可循的,我这个"有章可循"说的意思只是说应对技术⾯试是可以提前准备,所 ...

  2. 凭借着这份面经,我拿下了字节,美团的offer!

    最近经常有粉丝私信问我问了一些诸如秋招该怎么复习的问题,我就想顺便把回答整理发一发.我也是把之前面试的一些经历经验和身边的人面试的经验总结了一下放在下面. 前期准备规划: 如果秋招的话一般过年回来就可 ...

  3. Tuxera Disk Manager轻松解决硬盘格式转换问题

    生活中经常会遇到硬盘格式转换的问题,很多小伙伴都不知道怎么进行操作,特别是Mac小白们.今天,小编想要给不熟悉Mac系统的小伙伴推荐一款专业且高效的磁盘管理工具--Tuxera NTFS,可以帮助我们 ...

  4. 地图上显示点在点上标注当前点的id

    HTML: <div class="form-group field-company-state"> <div style="width:1000px; ...

  5. SpringBoot整合Elasticsearch7

    SpringBoot连接ElasticSearch有以下种方式, TransportClient,9300端口,在 7.x 中已经被弃用,据说在8.x 中将完全删除 restClient,9200端口 ...

  6. Python实现树莓派摄像头持续录像并传送到主机

    关于树莓派,想必从事嵌入式开发的开发者都有听过,树莓派原名为Raspberry Pi,也就是它的英文读法,树莓派诞生于英国,由"Raspberry Pi 基金会"这个慈善组织注册开 ...

  7. 想了解表格问答,我们先看看TA的前世

    摘要:表格问答是一种针对自然语言问题,根据表格内容给出答案的任务. 一.什么是表格问答 表1是一张综艺节目收视率报表,假如你需要了解市场份额在3%以上的综艺节目,你会选择采用什么样的方法? 首先,用肉 ...

  8. C++里面this关键字的用法和功能

    1.this指针的用处 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果.this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象 ...

  9. 再见!【JAVA GUI】

    1.GUI概述 图形用户界面(Graphical User Interface,简称 GUI,又 称图形用户接口)是指采用图形方式显示的计算机操作用户界面. java作为一种面向对象的程序设计语言,它 ...

  10. mySQL入门之多表操作

    外键 初识外键 外键:引用另一个表中的一列或多列,被引用的列应该具有主键约束或唯一性约束.(外键用于建立和加强两个表数据之间的连接,保证数据的完整和统一性) 主表:被引用的表 从表:引用外键的表 -- ...