参数配置: SQL
set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat; -- 启用归并输入 set mapred.max.split.size=256000000; -- 单个Map处理的最大数据量(默认256MB) set mapred.min.split.size.per.node=100000000; -- 单个节点最小归并阈值
通过将多个小文件归并为逻辑块,减少Map数目(例如将100个1MB文件归并为2个Map使命)
输出归并(使命竣事后归并)
参数配置: SQL
set hive.merge.mapfiles=true; -- 归并Map输出 set hive.merge.mapredfiles=true; -- 归并Reduce输出 set hive.merge.size.per.task=256000000; -- 目标文件巨细 set hive.merge.smallfiles.avgsize=16000000; -- 触发归并的阈值