关于hive语句执行时的map个数(二)

                           发现我一个很大的问题,不喜欢看源代码,唉,静不下心来,浮躁。。。

                          继续上一篇文章,提到combinHiveinputformat,看不懂,没去仔细看。直接操作,把hive-site.xml中的此项值改为了hiveinputformat,发现hive sql语句执行的时候基本是按照文件个数(小文件1个文件对应1个map,大的切分了多个map,与之前看的hadoop分map的资料基本对应起来了)来分配map个数了。(888个小文件,894个map)

                         由此猜测combinehiveinputformat是先将所有的小文件进行合并,如果不超过某个值,则只启动1个map,超过某值则多个,这个值可能不是block size。试过600多m的文件3个map,800多m的文件4个map。可能还得结合文件个数来推测。如果600m是多个小文件+2个大文件,800多m是多个小文件+3个大文件,则有可能是合并小文件,大文件按blocksize切,待验证,看明白源码,估计就真相大白了。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值