阿川CH
学海无涯,上栽上栽!
Toggle navigation
阿川CH
主页
归档
标签
hive能查出数据而presto查不出数据的原因
Presto
问题排查
Hive
2018-03-23 15:39:07
3
0
0
cqc
Presto
问题排查
Hive
> 跑union all 语句时会多出一层目录,是tez在当前环境下的一个坑,导致其他的计算框架取不到数据 ## 操作步骤 在hive on tez(hive版本2.3.2, tez版本0.8.4)上执行语句 ``` create table test(col1 string) partitioned by (part string); insert overwrite table test partition(part='part1') select '1' union all select '2'; hive> select * from test; OK 1 part1 2 part1 ``` 但如果在presto(版本0.188)上执行的话,查不出数据 ``` presto:cqc> select * from test; col1 | part ------+------ (0 rows) ``` 在hive on mr上也查不出数据 ``` hive> select * from test; OK Time taken: 1.448 seconds ``` ## 原因 **究其原因,是由于tez在跑union all 语句时会多出一层目录** ![](/api/file/getImage?fileId=5ab4ae9e418f8a54f600006c) 为什么说是tez的问题而不是hive呢,是因为如果用mr来跑的话,是不会多出一层目录的 ## 解决办法 不要使用Union all, 增加一个冗余分区
上一篇:
软件设计原则SOLID
下一篇:
YARN学习
文档导航