Hadoop的复制品是否会占用NameNode的内存

时间:2016-04-21 18:50:08

标签: hadoop hdfs

我们知道HDFS中的每个文件在NameNode中占用大约300字节的内存,因为每个文件有2个其他的重复,所以一个文件在NameNode中总共占用900字节内存,或者重复项不占用NameNode中的内存

2 个答案:

答案 0 :(得分:2)

查看名称节点内存使用情况和HADOOP-1687完成的性能优化,可以看到的内存使用量乘以复制因子。但是,文件目录的内存使用量不会因复制而增加。

在更改之前(即在Hadoop 0.13中)用于块的字节数是152 + 72 *复制,每个块的数字为368字节,默认复制设置为3.文件通常使用250字节和目录290字节,无论复制设置如何。

这些改进包括在0.15中(其中包括一些每复制节省,但仍然存在每次复制的成本)。

我还没有看到任何其他引用,表明已经删除了每个复制内存的使用情况。

答案 1 :(得分:-1)

来自Hadoop Wiki:“它保留文件系统中所有文件的目录树,并跟踪整个群集中文件数据的保存位置。它不会存储这些文件本身的数据。”< / p>

NameNode仅存储文件和目录信息。复制因子为3,放入HDFS的300 MB文件将使用总共900 MB的原始磁盘空间。每个DataNode将获得300 MB文件的一个副本,存储在不在内存中的磁盘上。