我正在尝试在Spark查询上运行Hive(使用Spark作为执行引擎进行Hive查询)。我已经在hive-site.xml中设置了它
我已经启动了一个hiveserver2,并尝试使用Beeline在同一台计算机上连接它,如下所示:
$ hiveserver2 &
$ $HIVE_HOME/bin/beeline -u jdbc:hive2://myIP:10000 -e "select count(*) from item;"
但是工作没有提交,我得到以下的错误
Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.spark.SparkTask (state=08S01,code=1)
以下内容适用于Spark上的Hive:
使用Hive CLI:
$ $HIVE_HOME/bin/hive -e "select count(*) from item;"
使用Beeline嵌入模式:
$ $HIVE_HOME/bin/beeline -u jdbc:hive2:// -e "select count(*) from item;"
PS:hive-site.xml
包含以下属性:
<property>
<name>hive.execution.engine</name>
<value>spark</value>
</property>
<property>
<name>spark.master</name>
<value>yarn-cluster</value>
</property>
<property>
<name>spark.eventLog.enabled</name>
<value>true</value>
</property>
<property>
<name>spark.eventLog.dir</name>
<value>file:///tmp/spark-events</value>
</property>
<property>
<name>spark.executor.memory</name>
<value>512m</value>
</property>
<property>
<name>spark.serializer</name>
<value>org.apache.spark.serializer.KryoSerializer</value>
</property>
编辑:在日志中找到它:
INFO [stderr-redir-1]: client.SparkClientImpl (SparkClientImpl.java:run(569)) - ERROR: org.apache.hadoop.security.authorize.AuthorizationException: User: root is not allowed to impersonate anonymous
答案 0 :(得分:5)
我遇到了与hive-2.0.0和spark 1.4.2一起运行Hive-on-Spark的问题。要克服它,只需将以下属性添加到hadoop配置文件core-site.xml:
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
祝你好运。
答案 1 :(得分:0)
试试这个
$ $HIVE_HOME/bin/beeline -n <username> -p <password> -u jdbc:hive2://myIP:10000 -e "select count(*) from item;"