小文件合并

文件数目过多,增加namenode的压力,hdfs的压力,同时需要更多map进程,影响处理效率。
可以通过配置如下几个参数,合并Map和Reduce的结果文件,消除这些影响。
  • 控制每个任务合并小文件后的文件大小(默认256000000):hive.merge.size.per.task
  • 告诉hadoop什么样的文件属于小文件(默认16000000):hive.merge.smallfiles.avgsize
  • 是否合并Map的输出文件(默认true):hive.merge.mapfiles
  • 是否合并Reduce的输出文件(默认false):hive.merge.mapredfiles

猜你喜欢

转载自hugh-wangp.iteye.com/blog/1508506