hbase hbck使用介绍

hbase hbck

1、简介

hbck工具可以检测hbase集群的region一致性和完整性,同时可以修复损坏的集群数据

工作模式两种:一致性检测只读模式,和多阶段修复模式

2、集群的一致性状态

1)region一致性

集群中所有region都被assign,且region在Master内存、ZK和hbase:meta表三个地方一致

2)表完整性

集群中的任意一张表,每个rowkey都仅能存在于一个region区间中

3、集群一致性状态检测

1)命令

hbase hbck

一般集群规模较大尽量不要直接执行,最好是对表进行扫描,直接在命令后加表名即可,多个表直接空格隔开

返回结果为Status: INCONSISTENT 或者Status: OK ;

如果region在move、split、merger时,执行命令是会显示有问题的,所以最好多次执行看

2)常用参数

-details 可以输出更详细的信息

-summary 只打印表和状态的的概要信息

-metaonly 只检查hbase:meta表的状态

4、修复参数

1)修复思路

修复后。使得Region的状态在。regioninfo文件、Master内存、ZK临时节点和hbase:meta表中数据一致

2)常用修复参数

​ -fixAssignments 用来修复region的分配,assign问题,如果有region没有assign或者同时assign到多台RS上等问题

​ -fixMeta 用来修复元数据,即HDFS上和元数据表中记录不一致问题,原则上是认为HDFS是正确的,即如果HDFS中有这个region,元数据表中没有,就在元数据表中添加,如果元数据表多了,就删除

​ -noHdfsChecking 不从hdfs上检查region信息,即假设meta表示正确的

​ -fixHdfsHoles 修复hdfs中的region黑洞,一般会和-fixAssignments -fixMeta参数一起用,或者使用

-repairHoles参数等同于 这三个参数同时使用

​ -fixRITAssignment 修复长RIT region

​ -repair 如果不知道用什么参数的话,就用这个参数,包含了常用的修复参数,也包含个高危操作

​ -help 。。。。。

### 3)慎用参数

​ -checkCorruptHFiles 检查所有Hfile,通过逐一打开Hfile来确定是否可用

​ -sidelineCorruptHFiles 隔离损坏的Hfile,这个参数包含上一个check参数

​ -fixTableLocks 删除已持有超长时间的table lock,默认是10分钟

​ -fixOrphanedTableZnodes 如果表不存在,则在ZK中将ZNOde的状态设置disabled

5、修复案例

1)hbase.version文件丢失

1>现象

集群启动时候会加载hdfs上的这个文件,如果丢失,集群或者损坏,系统就不能启动

2>解决思路

hbase hbck -fixVersionFile

对hbase.version修复或者生成

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值