我有一个带有 Parquet 数据的Hive外部表。

当我运行select count(*) from table1时,它与Tez一起失败。

但是,当执行引擎更改为MR时,它将起作用。知道为什么Tez失败了吗?我在Tez中遇到以下错误:

最佳答案

您必须将tez.tar.gz文件放在hdfs上。我认为您可能会错过这一步。

在hdfs上创建一个apps文件夹

hdfs dfs -mkdir -p /hadoop/apps/tez/

放入tez.tar.gz文件
hdfs dfs -put /usr/hadoop/tez/lib/tez.tar.gz /hadoop/apps/tez/

授予该文件夹和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

关于hadoop - hive -选择计数(*)不适用于Tez,但适用于MR,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49503973/

10-12 23:03