HBase 2.0 META 数据修复

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HBase 2.0 META 数据修复相关的知识,希望对你有一定的参考价值。

参考技术A 发现有张HBase表丢失了一半数据,然后在HBase Master UI上发现Region的数量少了一半,但是随后进入HDFS目录中查看,其实Region数据是存在的,那么原因就确定了,是META表中数据丢失,想要恢复数据,需要对META表进行数据修复。
在HBase中原本是提供了修复工具HBCK,但是在2.0之后修复命令均不可用,
官方虽然在github提供了HBCK2,但是对于HBase版本需求为最低2.0.3,而我们使用的是2.0.0,并且HBCK2中也并未提供META数据的修复方法,所以只能考虑手工修复。

修复思路同2.0之前一样,通过读取HDFS上Region目录下的.regioninfo文件得到Region信息,同时读取'hbase:meta'表中的Region信息,得到两者的差集,就是需要修复的Region信息。
然后将需要修复的Region信息写入到'hbase:meta'中。

至此,修复完毕

HBase运维——彻底删除HBase数据

 

1、hadoop的bin目录下,执行命令以下命令清除Hbase数据

hadoop fs -rm -r /hbase


2、连接ZK,执行以下命令清除Hbase数据

rmr /hbase 


3、重启ZK、重启hadoop(hdfs、yarn)、重启hbase

以上是关于HBase 2.0 META 数据修复的主要内容,如果未能解决你的问题,请参考以下文章

非关系型数据库——HBase重要机制

hbase读写流程

HBase框架基础

HBase实战 | 贝壳找房HBase 2.0在时序数据存储方向的应用

HBase指南 | HBase 2.0之修复工具HBCK2运维指南

HBase原理深入