0


hive: 优化配置

Hive provides two execution engines: Apache Hadoop MapReduce and Apache TEZ. Tez is faster than MapReduce.

配置优化

tez配置优化

调整mapper数

任务症状

任务中Map个数较大,超过2W甚至5W,资源紧张时任务申请不到资源;下游reduce因为上游map数量大导致shuffle慢。mapper数量与输入文件的split数息息相关,在Hadoop源码org.apache.hadoop.mapreduce.lib.input.FileInputFormat类中可以看到split划分的具体逻辑。

调优方法

set hive.execution.engine=tez;
set tez.grouping.max-size=67108864; //如果map数过多,可以加大这个值比如*2。
set hive.tez.map.memory.mb=3072;
"1,删除任务中的split size,使用平台默认的Split 切分算法(平台默认 Split 切分算法会考虑任务读取数据量 或 子任务的执行时间,来确定Split Size。)。
2,若需要手动调整split size,则需要打开任务运行日志链接,查看平均map运行时间。map平均运行时间以5min左右为合理,调整后map数最大不得超过50000。
tez任务调整参数:tez.grouping.max-size,单位bytes
mr任务调整参数:mapreduce.input.fileinputformat.split.maxsize或 mapred.max.split.size , 单位bytes"
<

标签: sql 数据库

本文转载自: https://blog.csdn.net/pipisorry/article/details/128922091
版权归原作者 -柚子皮- 所有, 如有侵权,请联系我们删除。

“hive: 优化配置”的评论:

还没有评论