Hdfs中⼩⽂件过多会有什么危害,如何避免?

提问者:帅平 问题分类:面试刷题
Hdfs中⼩⽂件过多会有什么危害,如何避免?
1 个回答
ヤ
Hadoop上⼤量HDFS元数据信息存储在NameNode内存中,因此过多的⼩⽂件必定会压垮NameNode的内存。
每个元数据对象约占150byte,所以如果有1千万个⼩⽂件,每个⽂件占⽤⼀个block,则NameNode⼤约需要2G空间。如果存储1亿个⽂件,则NameNode需要20G空间。显⽽易⻅的解决这个问题的⽅法就是合并⼩⽂件,可以选择在客户端上传时执⾏⼀定的策略先合并,或者是使⽤Hadoop的 CombineFileInputFormat\<K,V\> 实现⼩⽂件的合并。
发布于:2年前 (2023-02-16) IP属地:四川省
我来回答