网站留言程序怎么做,网站建设与网页制作教程,网站服务器搬家,wordpress生成xml地图一、情景说明
我们知道#xff0c;NameNode存储一个文件元数据#xff0c;默认是150byte大小的内存空间。 那么#xff0c;如果出现很多的小文件#xff0c;就会导致NameNode的内存占用。
但注意#xff0c;存储小文件所需要的磁盘容量和数据块的大小无关。 例如#x…一、情景说明
我们知道NameNode存储一个文件元数据默认是150byte大小的内存空间。 那么如果出现很多的小文件就会导致NameNode的内存占用。
但注意存储小文件所需要的磁盘容量和数据块的大小无关。 例如一个1MB的文件设置为128MB的块存储实际使用的是1MB的磁盘空间而不是128MB。
二、解决方案
HDFS存档文件或HAR文件来优化这个问题 具体说来HDFS存档文件对内还是一个一个独立文件对NameNode而言却是一个整体减少了NameNode的内存。 它的底层其实是一个MR程序。 你可以简单理解为它就是一个压缩程序。
三、案例
将/input目录下的文件归档成input.har文件并存于根目录。 归档文件
hadoop archive -archiveName input.har -p /input /output查看归档文件内容
hadoop fs -ls /output/input.har
hadoop fs -ls har:///output/input.har解压归档文件中所有文件
hadoop fs -cp har:///output/input.har/* /解压归档文件中一个文件
hadoop fs -cp har:///output/input.har/hello.txt /