har的不足

hdfs中每个文件均按块方式存储,每个块的元数据存储在namenode中,而namenode在内存中,如果出现大量的小文件,则会迅速耗尽内存。因此利用hadoop存储大量小文件显得非常低效。har文件是一个高效的文件归档工具,它将文件存入hdfs块,减少namenode内存使用的同时,还能运许对文件透明访问,即可以作为MapReduce的输入。

然而,har仍然存在很多不足。

1.创建一个存档文件会创建原始文件的一个复本,并且har不带压缩的(类似于linux的tar工具),因此需要与原文件容量相同的磁盘空间。

2.一旦创建,归档文件不可修改。不能从中增加或者删除文件。

3.InputFormat类不知道文件已经归档,所以即时在har文件中处理小文件,仍然不能解决低效的问题。

 

参考:hadoop权威指南

posted @ 2013-07-14 19:04  int32bit  阅读(173)  评论(0)    收藏  举报