
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寻址时间越长,反之寻址时间短
只考虑这俩点,如果非极限状态,理论上效率差不多
所以要根据集群硬件设备调整才最好。