大数据-小文件处理

小文件处理

如何产生?
(1)动态分区插入数据,产生大量的小文件;
(2)reduce数量越多,小文件也越多(reduce的个数和输出文件是对应的);
(3)数据源本身就包含大量的小文件。

影响
    (1)存储层面:
        1个文件块,占用namenode多大内存150字节
    (2)计算层面:
        每个小文件都会起到一个MapTask,占用了大量计算资源
        
HDFS处理    
    (1)har归档
    (2)CombineTextInputFormat
    (3)开启JVM重用;如果没有小文件,不要开启
            
Hive处理
    (1)在Map前合并,减少Map数:CombineHiveInputFormat
    (2)merge合并小文件,在map-only、map-reduce任务任务结束时合并小文件
        SET hive.merge.mapfiles = true; 
        SET hive.merge.mapredfiles = true; 
    (3)开启JVM重用
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值