专栏首页源哥的专栏Phoenix填坑记1:索引无故被disable

Phoenix填坑记1:索引无故被disable

Phoenix是基于HBase的,而Phoenix的索引其实是HBase的二级索引,当Phoenix的索引处于disable状态时,整个Phoenix表是无法正常使用的,要将索引修复为enable状态,往往需要重建索引,这对应一些大表来说,往往需要花费几个小时是时间,那么这几个小时,系统基本上就处于不可用状态,这对应现网系统来说,往往是不可接受的。

其实Phoenix有3个隐藏参数,这些参数在官网文档没有体现,但实际上这3个参数非常重要,可以解决上面提到的问题。

闲话不说,先来讲讲我们发现的问题的。

我们在调测功能时,突然发现Phoenix表不能使用,查看日志,发现体现如下异常:

[RpcServer.default.FPBQ.Fifo.handler=112,queue=8,port=6005] index PhoenixIndexFailurePolicy:handleFailure failed
java.io.IOException: org.apache.hadoop.hbase.DoNotRetryIOException: Attempt to disable ODS.T_TABLE failed.

用下面语句检查,发现表索引失效:

select TABLE_NAME,DATA_TABLE_NAME,INDEX_TYPE,INDEX_STATE,INDEX_DISABLE_TIMESTAMP from sys

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • phoenix二级索引

    二级索引 二级索引是从主键访问数据的正交方式。Hbase中有一个按照字典排序的主键Rowkey作为单一的索引。不按照Rowkey去读取记录都要遍历整张表,然后按...

    Spark学习技巧
  • Phoenix填坑记2:phoenix-5.0 在hbase2.0.1及以上版本,在使用索引时出错

    截止到2020年12月,Phoenix最高只支持到Hbase2.0版本,并不支持更高的版本。而我们采用的是腾讯云HBase,使用的版本是2.2.0版本,我们在使...

    源哥
  • 记一次大数据爬坑

    Vertx是一个高效的异步框架,支持Java、Scala、JavaScript、Kotlin等多种语言。在非性能调优的场景下,TPS可以高达2-3万,同时,支持...

    迹_Jason
  • HBase 2.0 协处理器实现 ES 数据同步

    在正式进行讲述实现之前,我觉得有必要说一下出发点。团队期初数据都是基于 HBase+Phoenix 这样架构进行持久化。随着业务的复杂性增加,对部分表的查询效率...

    迹_Jason
  • 细谈Hadoop生态圈

    Hadoop在过去的几年里已经变得很成熟了。下面的图1-2显示了Hadoop生态系统堆栈。Apache Phoenix是HBase的SQL包装,它需要基本的HB...

    木野归郎
  • Phoenix边讲架构边调优

    一 基础架构详解 1 概念 讲调优之前,需要大家深入了解phoenix的架构,这样才能更好的调优。 Apache Phoenix在Hadoop中实现OLTP和...

    Spark学习技巧
  • HBaseSQL及分析-Phoenix&Spark

    本文介绍了详细了HBaseSQL,Phoinix和Spark的架构,适用性以及优缺点,并在最后规划出未来将要设计的一款更符合用户需求的产品。

    大数据和云计算技术
  • 0787-6.3.3-如何在本地集群安装Workload Experience Manager(WXM)

    Workload XM是Cloudera现代数据平台以工作负载为中心的管理工具,可主动分析数据仓库、数据工程和机器学习环境的工作负载,提升应用程序性能,以及优化...

    Fayson
  • 如何使用Phoenix在CDH的HBase中创建二级索引

    Fayson

扫码关注云+社区

领取腾讯云代金券