hive:创建索引

Posted yy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive:创建索引相关的知识,希望对你有一定的参考价值。

hive也是支持索引的使用,但是如果表中已经有数据的情况下,创建索引的过程不是特别快。

已经拥有表:

create table if not exists llcfpd_withgroupbykey(groupbykey string,lrp string,timestamp string,objid string,uid string) 
row format delimited fields terminated by , stored as textfile;

创建索引:

create index idx_llcfpd_withgroupbykey on table llcfpd_withgroupbykey(groupbykey)
as org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler 
with deferred rebuild
IN TABLE llcfpd_withgroupbykey_idx;

备注:需要注意这里边创建索引实际上是插入了特定的数据到一个表。

原表更新数据:

ALTER INDEX idx_llcfpd_withgroupbykey on llcfpd_withgroupbykey REBUILD;

备注:当表中已经拥有数据的情况下,必须执行该语句,否则索引没有起到效果。

删除索引:

DROP INDEX idx_llcfpd_withgroupbykey on llcfpd_withgroupbykey;

查看索引:

SHOW INDEX on llcfpd_withgroupbykey;

 

以上是关于hive:创建索引的主要内容,如果未能解决你的问题,请参考以下文章

015-HQL中级5-hive创建索引

hive:创建索引

如何在 Hive Flutter 中获取索引的值?

Hive 查询不使用索引

Hive 通用 UDTF 因数组索引超出范围错误而失败

Hive 的索引