分享

hive 小文件问题

sunt99 发表于 2016-11-25 16:15:52 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 7600
hive-site.xml 配置如下:

<property>
    <name>mapred.reduce.tasks</name>
    <value>30</value>
  </property>
<property>
    <name>hive.merge.mapfiles</name>
    <value>true</value>
  </property>
  <property>
    <name>hive.merge.mapredfiles</name>
    <value>true</value>
  </property>
<property>
    <name>hive.merge.smallfiles.avgsize</name>
    <value>33554432</value>
  </property>
  <property>
    <name>hive.merge.size.per.task</name>
    <value>268435456</value>
  </property>
<property>
    <name>hive.exec.compress.output</name>
    <value>true</value>
  </property>
对于hive产生的小文件,因为我设置的mapred.reduce.tasks为30 ,所以生成的hdfs 中文件压缩个数为30个,但是文件的大小只有几兆,甚至更小,
对于reduce输出的结果如果很小,不是应该合并吗?这块理解的不是很清楚,大神帮忙看看吧



已有(1)人评论

跳转到指定楼层
langke93 发表于 2016-11-25 16:42:17
输入的时候可以合并。楼主可以减少task。任务数过多,输出结果又少,所以可以控制任务数的方式尝试解决
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条