Flink TaskManger 内存计算实战

计算实例

案例一、假设Task Process内存4GB。

taskmanager.memory.process.size=4096m

先排减JVM内存。

  • JVM Metaspace 固定内存 256m
  • JVM Overhead 固定比例 process * 0.1 = 4096 * 0.1 = 410m
    得到 Total Flink Memory = 4096-256-410 = 3430m

计算Total Flink Memory内的各内存

基数:3430m

  • Framework Heap 固定内存 128m
  • Framework Off_Heap 固定内存 128m
  • Task Off-Heap 固定内存 0m
  • Network 固定比例 flink * 0.1 = 3430 * 0.1 = 343m
  • Managed Memory 固定比例 flink * 0.4 = 3430 * 0.4 = 1372m
  • Task Heap 剩余内存 3430-128-128-0-343-1372=1459m

案例二、指定部分参数

指定
taskmanager.memory.process.size=4096mb
taskmanager.memory.task.heap.size=2048mb
taskmanager.memory.managed.size=512mb
taskmanager.memory.network.max=128mb

基本还是基于以上计算逻辑。但是剩余内存会分配给JVM Overhead了。如下图:

计算过程如下:

总Flink Process内存设置4096m

(1)JVM内存

  • JVM Metaspace 固定内存 256m
  • JVM Overhead 待定

(2)计算Total Flink Memory内的各内存

  • Framework Heap 固定内存 128m
  • Framework Off_Heap 固定内存 128m
  • Task Off-Heap 固定内存 0m
  • Network 参数指定 128m
  • Managed Memory 参数指定 512m
  • Task Heap 参数指定 2048m

综合剩余内存 4096-256-128-128-0-128-512-2048 = 896m

所以剩余内存分配给 JVM Overhead896m

相关推荐
武子康10 小时前
大数据-240 离线数仓 - 广告业务 Hive ADS 实战:DataX 将 HDFS 分区表导出到 MySQL
大数据·后端·apache hive
字节跳动数据平台1 天前
5000 字技术向拆解 | 火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
武子康2 天前
大数据-239 离线数仓 - 广告业务实战:Flume 导入日志到 HDFS,并完成 Hive ODS/DWD 分层加载
大数据·后端·apache hive
字节跳动数据平台2 天前
代码量减少 70%、GPU 利用率达 95%:火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据
得物技术2 天前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark
大大大大晴天2 天前
Flink生产问题排障-HBase NotServingRegionException
flink·hbase
武子康2 天前
大数据-238 离线数仓 - 广告业务 Hive分析实战:ADS 点击率、购买率与 Top100 排名避坑
大数据·后端·apache hive
武子康3 天前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive
大大大大晴天3 天前
Flink生产问题排障-Kryo serializer scala extensions are not available
大数据·flink
武子康5 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive