Hive的MapReduce优化

纯属记录笔记…,没有实际操作过。

MR优化

  • map和reduce的个数
    • 一个分片就是一个块,一个块对应一个maptask
    • Hadoop源码中有一个计算公式
      • min(max_split_size,max(min_split_size,block_size))
      • min_split_size默认值0(最小分片大小)
      • max取的时候取的是block_size,block_size默认是128
      • max_split_size默认值256(最大分片大小)
      • 这个公式决定了map的个数
      • 肯定不能直接去修改HDFS的block_size
      • 一般在实际的生产环境中HDFS一旦format格式化之后,block_size大小不会去修改的
      • 通过修改max_split_size和min_split_size来影响map的个数
  • 并行执行
    • 针对有些互相没有依赖关系的独立的job,可以选择并发的执行job hive.exec.parallel
    • 是否开启并行执行的功能
      hive.exec.parallel.thread.number
    • 设置并行执行的线程个数
    • 一般在工作中会选择去开启该功能
    • 根据实际的集群的状况和服务器的性能合理的设置线程数目
  • JVM重用
    • mapreduce.job.jvm.numtasks通过合理的测试,设置一个合理的数目
  • 推测执行
    • 当某个任务出现迟迟不结束的情况,那么会考虑开启推测执行,开启一个一模一样的任务去完成
    • 两个任务谁先完成&
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值