hive on tez 错误记录

Posted yjt1993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive on tez 错误记录相关的知识,希望对你有一定的参考价值。

1、执行过程失败,报 Container killed on request. Exit code is 143   

如下图:

技术图片

 

 

技术图片

分析:造成这种原因是由于总内存不多,而容器在jvm中占比过高,修改tez-site.xml文件,添加如下配置:

<property>
        <name>tez.container.max.java.heap.fraction</name>
        <value>0.2</value>   #调低内存占比,默认是0.8(也就是80%)
</property>

 2、ERROR [main] exec.TaskRunner: Error in executeTask java.lang.NoSuchFieldError: DEFAULT_MR_AM_ADMIN_USER_ENV

分析:

  • hadoop版本与tez所带的hadoop版本不一致。
  • 没有配置tez的类路径或者配置失效。

解决:

  • 第一种情况,删除tez的lib目录下的hadoop包,然后拷贝hadoop lib下的hadoop包过去。(参考上篇hive on tez)
  • 第二种情况,在hadoop-env.sh配置环境变量 或者拷贝tez目录或者tez的lib目录下的.jar包到hive下的lib目录。
1、hadoop-env.sh配置环境变量
TEZ_CONF_DIR=/data1/hadoop/hadoop/etc/hadoop/ TEZ_JARS=/tez-0.9.0 export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$TEZ_CONF_DIR:$TEZ_JARS/*:$TEZ_JARS/lib/*
或者
2、拷贝jar文件到hive
#scp /tez-0.9.0/*.jar /data1/hadoop/hive/lib
#scp /tez-0.9.0/lib/*.jar /data1/hadoop/hive/lib

 

以上是关于hive on tez 错误记录的主要内容,如果未能解决你的问题,请参考以下文章

Hive tez 执行错误

通过 Hive JDBC 在 Tez 上进行 Hive - 错误

无法创建 InputInitializerManager 错误 - HIVE 上的 TEZ

Hive on Tez

配置 Hive On Tez

hive 使用tez