2017-06-18 176 views
0

在虚拟机上的Hive中,我创建了一个名为mytable的表并插入了几条记录。使用订单时出现Hive错误

当我执行此查询:

select * from mytable order by id 

我得到一个错误:

Error: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing row (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 

灿有人帮忙吗?

+0

添加表定义和数据示例 –

+0

mytable(id int,name string,addr string)数据是-1 ram kk,2 Tanishq kk2只有2条记录。 – user8167344

+0

1)添加任何额外的信息到您的文章,而不是作为评论2)添加'show create table mytable'的输出# –

回答

-1

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

如果你还没有这样做,还有其他的事情要做,就是在所涉及的表格上做一个统计信息收集。你可以这样做:

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

然后启用hive.stats.fetch.column.stats如果不是。然后使用tez执行引擎运行查询。

+0

这是如何以任何方式涉及到元数据异常? –

+0

我只是使用claudera的非商业虚拟机进行学习,我认为它的执行引擎只是MR。 – user8167344