赞
踩
输入小文件:
设置map输入合并小文件的相关参数:
- //每个Map最大输入大小(这个值决定了合并后文件的数量)
- set mapred.max.split.size=256000000;
- //一个节点上split的至少的大小(这个值决定了多个DataNode上的文件是否需要合并)
- set mapred.min.split.size.per.node=100000000;
- //一个交换机下split的至少的大小(这个值决定了多个交换机上的文件是否需要合并)
- set mapred.min.split.size.per.rack=100000000;
- //执行Map前进行小文件合并
- set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;
设置map输出和reduce输出进行合并的相关参数:
- //设置map端输出进行合并,默认为true
- set hive.merge.mapfiles = true
- //设置reduce端输出进行合并,默认为false
- set hive.merge.mapredfiles = true
- //设置合并文件的大小
- set hive.merge.size.per.task = 256*1000*1000
- //当输出文件的平均大小小于该值时,启动一个独立的MapReduce任务进行文件merge。
- set hive.merge.smallfiles.avgsize=16000000
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。