赞
踩
本文主要介绍Phoenix索引状态的生命周期,帮助大家解惑“为什么我的phoenix索引不能正常使用了?”
索引总共有以下几个状态,其状态信息存储在SYSTEM.CATALOG表中。可以通过以下SQL来查看所有索引表信息:
- select TABLE_NAME,DATA_TABLE_NAME,INDEX_TYPE,INDEX_STATE,INDEX_DISABLE_TIMESTAMP
- from system.catalog where INDEX_TYPE is not null;
SQL中字段:
LOCAL(2)
USABLE("e")
UNUSABLE("d")
ACTIVE("a")
INACTIVE("i")
DISABLE("x"))
REBUILD("r")
DISABLE 表示索引将处于不可用的维护状态,同时将不能用于查询中。
REBUILD 表示索引将完成重建,同时一旦重建完成此索引将能被在此用于查询中。
BUILDING 表示将从索引不可用的时间戳处重建索引直到重建完成。
INACTIVE/UNUSABLE 表示索引将不能用于查询中,但索引仍然在不可用的维护状态。
ACTIVE/USABLE 表示索引表能被正常用于查询中。
注:disable状态的索引必须重建,不能设置为USABLE状态。
以上是社区版本通过RS failover来解决问题,但这种方法也存在一些问题:
云HBASE针对以上问题,提出了以下解决方法,并已经实现。
参见下一篇二级索引文章
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。