今天在跑一项任务时出现了下面的场景:
相信大家在跑hive任务的时候会有出现这种情况的可能性,那这种情况该如何排查呢,这就需要借助日志文档,当然hive的日志文档确实不太好找,这里需要我们提前给我们的服务器配上jobhistory,如下:
然后找到我们失败的那一项,点开即可,
到这个页面后,请点击右下角的logs
接着点击click here就会出现完成的日志信息
在这里教大家一个小技巧,一般错误信息都会是error或者failed,所以直接ctrl+f出现搜索页面,然后搜索error就可以了
如果大家觉得页面小也可以点击ctrl++放大
在这里可以看到错误的是无法分配内存,简单来说就是内存溢出了,所以出错了,这是因为我这个采用的分区分桶,然后信息比较多,导致无法进行reduce,所以很正常,那遇到这种一般情况就是加服务器要不就放弃吧,这不是你的错。
当然如果日志中出现了其他错误,可以根据logs来修改。