博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdfs fsimage namenode 应该设置多少堆内存合适
阅读量:5251 次
发布时间:2019-06-14

本文共 1059 字,大约阅读时间需要 3 分钟。

线上的fsimage 有1.8G左右了,设置了6G heap 不够用了

新生代:老年代=1:2=2G: 4G

NameNode的内存主要由NameSpace和BlocksMap占用,其中NameSpace存储的主要是INodeFile和INodeDirectory对象,BlocksMap存储的主要是BlockInfo对象。则估算NameNode占用的内存大小也就是估算集群中INodeFile、INodeDirectory和BlockInfo这些对象占用的heap空间。

Java中常见数据结构占用的内存大小

下面先列举下java中常见数据结构占用的内存大小(64bit的jvm)
int = 4 bytes
long = 8 bytes
Reference size(引用) = 8 bytes
Object header size(对象头) = 16 bytes
Array header size(数组头) = 24 bytes
ArrayList header size(list头) = 24(数组头) + 4(属性size的大小) = 28 bytes
TreeMap.Entry = 64 bytes. (Entry的属性中有5个引用)
HashMap.Entry = 48 bytes. (Entry的属性有3个引用)
String header = 64 bytes.

1.去 hdfs ui 上看

19262510 files and directories, 14485600 blocks = 33748110 total filesystem object(s).Heap Memory used 4.68 GB of 5.86 GB Heap Memory. Max Heap Memory is 5.86 GB.

33745283 * 150 bytes = 4.7G

2.大概用jmap 查看内存大概有 4.68Gb

945048-20180920230618326-935516110.png

$ jmap -histo:live  31366 | grep 'Total'Total      84543039     4688976560

两者近似了,fsimage 大概在内存放大 2.6倍左右(当然内存中数据更多些,多了块与节点之间的映射)


参考:

posted on
2018-09-20 22:52 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/jiangxiaoxian/p/9683863.html

你可能感兴趣的文章
Python 装饰器
查看>>
c# 文件笔记
查看>>
Vue 自定义指令
查看>>
帆软 控件内容 清除
查看>>
第一页 - 工具的使用(webstorm)
查看>>
.net static 变量
查看>>
The Number of set-hdu-3006
查看>>
自定义分页控件,修改自AspNetForums.Controls.Pager
查看>>
ssh 免签登录 亲测可以
查看>>
Linux 进程资源用量监控和按用户设置进程限制
查看>>
IE浏览器整页截屏程序(二)
查看>>
D3.js 之 d3-shap 简介(转)
查看>>
制作满天星空
查看>>
MyBatis日记(三):戏说MyBatis配置文件
查看>>
$_POST和$GLOBALS['HTTP_RAW_POST_DATA'] 的区别
查看>>
类和结构
查看>>
遍历文件夹下所有dll的类
查看>>
CSS3选择器(二)之属性选择器
查看>>
关于浏览器行为和服务器行为下的重定向和转发再次理解
查看>>
c语言枚举型常量
查看>>