本文介绍了蜂巢-选择计数(*)不能与Tez一起使用,但可以与MR一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含木地板数据的Hive外部表.
I have a Hive external table with parquet data.
当我运行select count(*) from table1
时,它与Tez一起失败.
When I run select count(*) from table1
, it fails with Tez.
但是,当执行引擎更改为MR时,它可以工作.知道为什么Tez失败了吗?我在Tez中遇到以下错误:
But when execution engine is changed to MR it works. Any idea why it's failing with Tez? I'm getting the following error with Tez:
推荐答案
您必须将tez.tar.gz
文件放在hdfs上.我认为您可能会错过这一步.
You have to put tez.tar.gz
file on hdfs. I think you might be miss this step.
在hdfs上创建一个apps
文件夹
make a apps
folder on hdfs
hdfs dfs -mkdir -p /hadoop/apps/tez/
放入tez.tar.gz
文件
hdfs dfs -put /usr/hadoop/tez/lib/tez.tar.gz /hadoop/apps/tez/
授予对该文件夹和tar的权限
give the permission to that folder and tar
hdfs dfs -chown -R $HDFS_USER:$HADOOP_USER /hadoop
hdfs dfs -chmod -R 555 /hadoop/apps/tez
hdfs dfs -chmod -R 444 /hadoop/apps/tez/tez.tar.gz
这篇关于蜂巢-选择计数(*)不能与Tez一起使用,但可以与MR一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!