我已经构建了一个带有ORC存储格式的Hive表
create table temp.userinfo(user_id int, user_group int, user_type int)
row format delimited fields terminated by ',' lines terminated by '\n' stored as ORC
然后我在表格上生成一个索引
create index user_id_user on table userinfo(user_id) as 'COMPACT' with deferred rebuild
加载数据后,我尝试用hql重建索引为"
ALTER INDEX user_id_user ON userinfo REBUILD
但我收到错误
执行sql时出错:'处理语句时出错:FAILED: org.apache.hadoop.hive.ql.exec.mr.MapRedTask中的执行错误'
sql = ALTER INDEX用户信息上的user_id_user REBUILD,args =无
我不知道如何弄清楚这个错误。 谢谢你太多了!
答案 0 :(得分:0)
我已经想通了。由于ORC已经建立了自己的索引,我无法在ORC存储表上构建索引。当我将存储的格式更改为文本文件时,我可以构建索引