hive 执行时reduce 任务个数 设置
来源:互联网 发布:许单单知乎 编辑:程序博客网 时间:2024/05/22 09:46
Hive怎样决定reducer个数?
Hadoop MapReduce程序中,reducer个数的设定极大影响执行效率 ,这使得Hive怎样决定reducer个数成为一个关键问题。遗憾的是Hive的 估计机制很弱,不指定reducer个数的情况下,Hive会猜测确定一个reducer个数,基于以下两个设定:
1. hive.exec.reducers.bytes.per.reducer(默认为1000^3)
2. hive.exec.reducers.max(默认为999)
计算reducer数的公式很简单:
N=min(参数2,总输入数据量/参数1)
通常情况下,有必要手动指定reducer个数。考虑到map阶段的输出数据量通常会比输入有大幅减少,因此即使不设定reducer个数,重设参数2还是必要的。依据Hadoop的经验,可以将参数2设定为0.95*(集群中TaskTracker个数)。
Reduce任务设置多少个?
正确的reduce任务的 个数应该是0.95或者1.75 ×(节点数 ×mapred.tasktracker.tasks.maximum参数值) 。如果任务数是节点个数的0.95倍,那么所有的reduce任务能够在 map任务的输出传输结束后同时开始运行。如果任务数是节点个数的1.75倍,那么高速的节点会在完成他们第一批reduce任务计算之后开始计算第二批 reduce任务,这样的情况更有利于负载均衡。
可在hivesql前面这样显示设置:
set mapred.reduce.tasks=16;
- hive 执行时reduce 任务个数 设置
- Hive 设置map 和 reduce 的个数
- Hive 设置map 和 reduce 的个数
- Hive 设置map 和 reduce 的个数
- Hive 设置map 和 reduce 的个数
- Hive 设置map 和 reduce 的个数
- Hive设置map和reduce的个数
- hive reduce 个数
- Hive控制Reduce个数
- hive是如何判断设置map、reduce个数的
- Hive中reduce个数设定
- Hive中reduce个数设定
- hive reduce任务太多问题
- hive设置reduce的最大值
- hive 影响reduce 个数的参数
- hive (map和reduce 个数的设定 )
- map任务split切片 reduce个数 partition
- hive优化之控制hive任务中的reduce数
- Mac os x 的一些小技巧
- 编写程序将一个list容器的所有元素赋值给一个vector容器。
- 网页布局中外边距叠加问题
- jsp中几种域对象的使用场景
- sql注入检测工具sqm---ettack汉化版的bug
- hive 执行时reduce 任务个数 设置
- Typelist 笔记
- Struts2:jsp前台传值到action后台的三种方式
- glib交叉编译错误
- liferay-portal中卸载portlet
- PHP高级工程师的需知道的
- javascript对于DOM加强
- excel从右向左截取字符串函数
- UITextView