您的位置:首页 > 运维架构

hadoop的archive归档和CombineFileInputFormat的使用

2017-10-16 20:47 344 查看
在使用mapreduce进行计算的时候,有时候会因为小文件过多,导致map任务过多,用下面的方式(CombineFileInputFormat),可以减少map数量:http://www.cnblogs.com/skyl/p/4761662.html
 原来flume上传好多个小文件,但是hdfs的块儿大小设置为64M,而hadoop一直非常讨厌小文件,因为小文件会占用大量的namenode空间,我一直没有弄懂怎么解决这个矛盾;直到今天,我才懂得了,那么多的小文件,在使用的时候,是先要用archive进行归档,变成一个大文件;一般几百个文件变成一个文件,然后将所有的小文件删除,就剩下一个大文件,那么namenode的文件元数据就会大大的减少
可以使用archive归档:hadoop archive -archiveName 2015-11-11.har -p /flumeTest/0123-62F9-5FAB-9A69-D134-8E98-3D5A-1012-035E-606F-E162/2015-11-11/ /tmp/archive/it
查看:hadoop dfs -ls har:///tmp/archive/it/2015-11-11.har
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: