【问题标题】:Hive Index Rebuild FailsHive 索引重建失败
【发布时间】:2017-06-10 02:28:42
【问题描述】:

我已经用 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 as“重建索引”

ALTER INDEX user_id_user ON userinfo REBUILD

但我得到的错误是

执行sql时出错:'处理语句时出错:FAILED: org.apache.hadoop.hive.ql.exec.mr.MapRedTask 中的执行错误'
sql=ALTER INDEX user_id_user on userinfo REBUILD, args=None

我不知道如何找出这个错误。 非常感谢!

【问题讨论】:

  • on table 不正确。
  • 你的意思是在创建索引部分?什么是正确的语法?

标签: indexing hive hiveql


【解决方案1】:

我想通了。由于 ORC 已经建立了自己的索引,我无法在 ORC 存储的表上建立索引。当我将存储格式更改为文本文件时,我可以建立索引

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    • 1970-01-01
    • 2011-10-02
    相关资源
    最近更新 更多