• hive遇到FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask错误


    hive遇到FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask错误

    起因

    使用hive做join查询,a表十几万数据,b表1kw多点数据,结果跑起来就是跑一半返回错误,提示如下:

    FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
    
    尝试
    • 实在是没什么解决办法,然后咨询了别人,说看看是不是有不合理数据,然后查了一下,去掉了一个空数据……然后重新跑,还是不行
    • 谷歌之,看到这个网页,意思是这并不是真的错误,需要去看日志。然后同事去看了日志,没看到什么东西
    • 再考虑是不是队列的事情,结果换了个队列,依然是同样的错误
    解决

    这个时候我真的开始怀疑是不是数据过大了……虽然理论上倒是不应该,然后同事说要不你试一下换个引擎,然后把引擎换成了Tez,你妈嗨,22s跑出来了结果……擦

    这让我情何以堪?就换个引擎,你至于差别这么大么,Map-Reduce和Tez让我感觉实在是太吃惊了

    所以再遇到这个问题,确认数据没问题,命令没问题的同学,可以试试这个办法。

    感想

    解决问题的思路,有时候卡住了可以换个思路,这条路堵住了,看看其他的办法

  • 相关阅读:
    oracle 误删除表的几种恢复方法
    解决js在alert或者断点调试时才能赋值
    常用的Debug方式
    字节对齐
    CWnd::SetWindowPos的注意事项
    网络模块代码调试要点
    stub和mock
    全局变量的缺陷
    SVN切换地址
    C/C++如何得到int型最大值
  • 原文地址:https://www.cnblogs.com/wswang/p/7718067.html
Copyright © 2020-2023  润新知