hbase hbck主要用来检查hbase集群region的状态以及对有问题的region进行修复。

hbase hbck :检查hbase所有表的一致性,如果正常,就会Print OK

hbase hbck -details:检查hbase所有表的一致性,并且输出详细报告。
hbase hbck table1 table2:指定检查某些表,可以输入多个表,用空格隔开。
 
HBCK - HBCK检查什么?
(1)HBase Region一致性
  • 集群中所有region都被assign,而且deploy到唯一一台RegionServer上
  • 该region的状态在内存中、hbase:meta表中以及zookeeper这三个地方需要保持一致
(2)HBase 表完整性
  • 对于集群中任意一张表,每个rowkey都仅能存在于一个region区间
 
HBCK – 常用检查命令
  • ./bin/hbase hbck
  • ./bin/hbase hbck –details
  • ./bin/hbase hbck TableFoo TableBar
 
HBCK - 局部低危修复
  • -fixAssignments :修复没有assign、assign不正确或者同时assign到多台RegionServer的问题region。
  • -fixMeta :主要修复.regioninfo文件和hbase:meta元数据表的不一致。修复的原则是以HDFS文件为准:如果region在HDFS上存在,但在hbase.meta表中不存在,就会在hbase:meta表中添加一条记录。反之如果在HDFS上不存在,而在hbase:meta表中存在,就会将hbase:meta表中对应的记录删除。
 
HBCK –高危修复 
  • region区间overlap相关问题的修复属于高危修复操作,因为这类修复通常需要修改HDFS上的文件,有时甚至需要人工介入。
  • 对于这类高危修复操作,建议先执行hbck -details详细了解更多的问题细节,再执行相应的修复命令
  • -repair|-fix 命令强烈不建议生产线使用

案例1:

案例2:

RIT处理套路
  • 套路一:pending_open(或pending_close)状态的region通常可以使用hbck命令修复
  • 套路二:failed_open (或failed_close)状态的region通常无法使用hbck命令修复,需检查日志确认region无法打开(关闭)的具体原因
  • 套路三:region处于RIT状态但hbck显示正常,把zk上的region-in-transaction节点相关region删除,重启master
 
HBase-日志分析
  • 监控分析只能告诉你可能是什么原因,间接原因
  • 日志分析才能告诉你问题的精确原因,最直接原因。
       一般的问题都能在日志中找到直接原因,再根据原因找答案。
  • 通过日志分析可以弄清楚事情的来龙去脉,监控不会告诉你那么多

HBase常见问题
 
 

hbase hbck及region RIT处理的更多相关文章

  1. HBase原理–所有Region切分的细节都在这里了

    本文由  网易云发布.   作者:范欣欣(本篇文章仅限内部分享,如需转载,请联系网易获取授权.)   Region自动切分是HBase能够拥有良好扩张性的最重要因素之一,也必然是所有分布式系统追求无限 ...

  2. hbase hbck命令

    hbase hbck 只做检查 hbase hbck -fixMeta 根据region目录中的.regioninfo,生成meta表` hbase hbck -fixAssignments 把met ...

  3. [转]HBase hbck——检察HBase集群的一致性

    Hbase提供了hbck命令来检查各种不一致问题.hbck的名字仿效了HDFS的fsck命令,后者是一个用于检查HDFS中不一致问题的工具.下面这段非常易懂的介绍出自于hbck的源程序. 检查数据在M ...

  4. hbase 修复 hbase hbck

    hbase hbck 新版本的 hbck 可以修复各种错误,修复选项是: (1)-fix,向下兼容用,被-fixAssignments替代 (2)-fixAssignments,用于修复region ...

  5. hbase报Dead Region Servers

    问题描述: 16010端口启动成功,16020未启动. hbase-root-regionserver-hbase2.log日志: 2019-08-14 16:45:10,552 WARN [Thre ...

  6. hbase优化之region合并和压缩

    HBASE操作:(一般先合并region然后再压缩) 一 .Region合并: merge_region   'regionname1','regionname2' ,'true'  --true代表 ...

  7. hbase集群region数量和大小的影响

    1.Region数量的影响 通常较少的region数量可使群集运行的更加平稳,官方指出每个RegionServer大约100个regions的时候效果最好,理由如下: 1)Hbase的一个特性MSLA ...

  8. 读者来信-5 | 如果你家HBase集群Region太多请点进来看看,这个问题你可能会遇到

    前言:<读者来信>是HBase老店开设的一个问答专栏,旨在能为更多的小伙伴解决工作中常遇到的HBase相关的问题.老店会尽力帮大家解决这些问题或帮你发出求救贴,老店希望这会是一个互帮互助的 ...

  9. 读者来信 | 如果你家HBase集群Region太多请点进来看看,这个问题你可能会遇到

    前言:<读者来信>是HBase老店开设的一个问答专栏,旨在能为更多的小伙伴解决工作中常遇到的HBase相关的问题.老店会尽力帮大家解决这些问题或帮你发出求救贴,老店希望这会是一个互帮互助的 ...

随机推荐

  1. day1-2基本数据类型

    /*5种基本数据类型 1,Undefined var a; a = undefined Undefined派生自Null 2,Null(本质属于object,单独细分出来的) var a = null ...

  2. 使用tag标签是SEO优化的重要性是什么?

    使用tag标签是SEO优化的重要性是什么? tag标签是一种SEO技术,在网站优化的过程中,更准确.更具体地用关键词对文章进行分类,对SEO优化具有重要的作用. 但是,很多新人站长在发表文章时不太注意 ...

  3. H5不支持的标签

    <acronym> 定义首字母缩写. <applet>  定义applet <basefont> 定义文档中所有文本的默认颜色.大小和字体.请用CSS代替  < ...

  4. Vue源码(上篇)

    某课网有个488人名币的源码解读视频看不起,只能搜很多得资料慢慢理解,看源码能知道大佬的功能模块是怎么分块写的,怎么复用的,已经vue是怎么实现的 资料来自 vue源码 喜欢唱歌的小狮子 web喵喵喵 ...

  5. 「luogu4366」最短路

    「luogu4366」最短路 传送门 直接连边显然不行,考虑优化. 根据异或的结合律和交换律等优秀性质,我们每次只让当前点向只有一位之别的另一个点连边,然后就直接跑最短路. 注意点数会很多,所以用配对 ...

  6. SpringBoot项目中自定义注解的使用

    1.定义注解接口 @Documented @Retention(RUNTIME) @Target(METHOD) public @interface MyLog {    String value() ...

  7. elasticsearch mapping简单介绍

    这两天一直在看elasticsearch相关的内容,看到mapping这一块,就折腾了下. 一般情况下,我们不需要对elasticsearch的mapping进行设置,但如果希望对索引使用自定义的管理 ...

  8. sqlplus导入sql,dmp导入导出

    1.创建表空间及用户名 1).用Oracle的EM做数据库的管理(表空间.用户及授权为例子) https://blog.csdn.net/anderslu/article/details/566701 ...

  9. APNs推送的系统做法

    1. #pragma mark - 远程推送注册获得device Token if (IOS_VERSION >= 10.0) { UNUserNotificationCenter * cent ...

  10. HTML元素和测试用例的简要介绍

    HTML和CSS的基本语法就不出教程,线下自己看电子书即可 HTML元素 标签 内容 属性 标签+内容+属性 <html> <head> <title>我的主页&l ...