灿彬垂死挣扎ing 2021-04-21 15:33 采纳率: 0%
浏览 79

Hive作业中某个表为inner join关系则会fail但left join则正常?

a.Hive:多表关联:

> 主表与从表1:inner join

> 其余从表:left join

> count(1):最大的表条数:1726276,最小的:38条

> 执行该hive作业后,大概10分钟后就会fail,具体报错日志:

FATAL [main] org.apache.hadoop.mapred.YarnChild: Error running child : java.lang.OutOfMemoryError: GC overhead limit exceeded

b.解决方法:

> 通过日志可定位到是主表与从表1:inner join的时候fail掉了,有尝试过将从表1以及相关的涉及到的字段注释掉,结果是正常运行得;

> 从表1与主表仍为:inner join的关系:尝试过将select后的字段全部注释掉,只:count(1),正常执行,结果显示的条数与主表接近;

> 最后将主表与从表1的关联关系:修改:left join,发现就可以正常执行了,select后面跟的字段,也就可以正常显示出来了

 

  • 写回答

4条回答 默认 最新

  • 关注

    你这个主要是内存不足引起的问题,跟left join,inner join没有关系。

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?