hdfs —— 为什么hadoop1块大小要设置成64M,hadoop2设置成128M
发布日期:2021-05-08 20:54:19 浏览次数:20 分类:精选文章

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

总结

128M相对hadoop2开源时的数据传输网络io和磁盘io更匹配

如果公司集群带宽和磁盘io速度更加优秀,完全可以根据实际进行调优,256M、512M等.

这个是一个在大数据集群中一个比较好的调优方向

猜测:hadoop1当时可能处于硬件较落后的时代,64M为当时最优数据传输量级,也有可能当时开源人员未曾考虑这一层。而hadoop2之后考虑这层之后或者应对当时硬件效率更改为128M

论据

1、现在大部分集群节点之间使用千兆网卡,实际数据传输速度大约在100M/s

2、当时磁盘写入也大多为100MB/s

3、hdfs平均寻址时间在10ms,测试寻址时间为传输时间的1%时,为最佳状态,10ms/1%=1000ms=1s

所以数据在获取到传输的时间最佳为1s

计算出最佳块大小为 100M/s*1s=100M

而根据磁盘大小普遍为128G、256G、512G

设置为128M块大小

扩展

块大小与集群、磁盘之间传输有影响,

块越大传输时间就越长,反之则传输时间越短

块越小,小文件越多namenode寻址时间越长,反之寻址时间短

只考虑这俩点,如果非极限状态,理论上效率差不多

所以要根据集群硬件设备调整才最好。

 

 

上一篇:flink —— checkpoint机制
下一篇:shell —— bash + expect 服务器间一键登录(针对需要服务器无法直连,开发者也懒得输入密码的)

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年04月10日 05时26分55秒