hive reduce 阶段GC Exception
Posted 苏轶然
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive reduce 阶段GC Exception相关的知识,希望对你有一定的参考价值。
某个reduce中的value堆积的对象过多,导致jvm频繁GC。
解决办法:
1. 增加reduce个数,set mapred.reduce.tasks=300,。
2. 在hive-site.xml中设置,或者在hive shell里设置 set mapred.child.java.opts = -Xmx512m
或者只设置reduce的最大heap为2G,并设置垃圾回收器的类型为并行标记回收器,这样可以显著减少GC停顿,但是稍微耗费CPU。
set mapred.reduce.child.java.opts=-Xmx2g -XX:+UseConcMarkSweepGC;
3. 使用map join 代替 common join. 可以set hive.auto.convert.join = true
4. 设置 hive.optimize.skewjoin = true 来解决数据倾斜问题
以上是关于hive reduce 阶段GC Exception的主要内容,如果未能解决你的问题,请参考以下文章