使用order by时的Hive错误

时间:2017-06-18 16:34:59

标签: hadoop hive bigdata

在虚拟机上的Hive中,我创建了一个名为mytable的表,并插入了一些记录。

执行此查询时:

select * from mytable order by id

我收到错误:

  

错误:java.lang.RuntimeException:org.apache.hadoop.hive.ql.metadata.HiveException:处理行时的Hive运行时错误(tag = 0)

架构,查询和数据的附加信息如下,

hive> describe mytable;
OK
id  int 
name    string  
addr    string  
Time taken: 0.281 seconds

hive> select * from mytable;
OK
2   tanishq akola
1   ram kk
Time taken: 0.271 seconds

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:-1)

解决此问题的最简单方法是将hive.execution.engine设置为mr,这将使查询工作但运行速度较慢。

如果您还没有这样做,那么尝试的另一件事就是对所涉及的表进行统计数据收集。您可以通过以下方式完成:

分析表store_sales分区(...)计算统计信息; analyze table store_sales partition(...)计算列的统计信息;

如果没有,则启用hive.stats.fetch.column.stats。然后使用tez执行引擎运行查询。