漫画大数据:如何解决 NameNode 内存持续增长的问题(二)
2023-03-07 09:02:23 时间
NameNode 的内存占用与 HDFS 中的目录数量、文件数量以及块数量有关,随着目录和文件数量的增多,可以通过调大 NameNode 堆内存的方式来解决内存不足的问题,但毕竟物理内存是有上限的,不可能无限增大,还有其他什么好办法呢?
假设 Hadoop 集群资源足够支撑 50 个任务并发,每次处理数据前,需要花 1 分钟时间来创建任务,每个任务需要 5 分钟时间来完成 128MB 的数据分析工作。
当需要分析的数据量为 1.28GB 时,如果 Block 大小设置为 128MB,那么就会存在 10 个 Block,可以同时起 10 个任务并发运行,总的数据分析时长就是 5 分钟,再加上 1 分钟的创建任务时间,总共花费 5+1=6 分钟。
如果 Block 大小设置为 256MB,那么就会存在 5 个 Block,只能同时起 5 个任务并发运行(Block 一般作为文件读写的最小单元),总的数据分析时长就是 10 分钟,再加上 1 分钟的创建任务时间,总共花费 10+1=11 分钟。
此时,Block 大小设置为 128MB 时,效率更高。
当需要分析的数据量为 128GB 时,如果 Block 大小设置为 128MB,那么就会存在 1000 个 Block,最多同时起 50 个任务并发运行,需要跑 20 轮并发才行,总的花费时长就是 20*(5+1)=120 分钟。
如果 Block 大小设置为 256MB,那么就会存在 500 个 Block,最多也是同时起 50 个任务并发运行,但只需要跑 10 轮并发,总的花费时长为 10*(10+1)=110 分钟。
此时,Block 大小设置为 256MB 时,效率更高。
相关文章
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地
- 浅谈数据血缘的实现原理
- 年终盘点:2022年炙手可热的十家大数据初创公司
- 这才是真正的商品分析,而不是罗列进销存
- 十个实用的数据可视化的图表总结
- 只需五步,实现数据分析闭环
- 从SQL Boy到管理者:数据分析师成长的五个阶段
- 科技与世界杯:大数据如何改变足球赛