主要围绕以下几个方面展开:
- 什么是一致性
- HBCK到底可以检查和修复哪些一致性情况
- 每一种情况对应的异常有哪些表现
- 怎么定位异常和修复?
一. HBCK一致性
一致性是指Region在meta中的meta表信息、在线Regionserver的Region信息和hdfs的Regioninfo的Region信息的一致。
二. 一致性的检查和修复命令
一致性检查命令
hbase hbck <-details> <表名>
一致性修复
hbase hbck <-fixMeta> ,<-fixAssignments> <表名>
命令详解
-fixAssignments:Try to fix region assignments. Replaces the old -fix
不同情况,动作不一样,包括下线、关闭和重新上线
-fixMeta:Try to fix meta problems. This assumes HDFS region info is good.
主要以hdfs为准进行修复,hdfs存在则添加到meta中,不存在删除meta对应region。
三.异常定位和修复
region在meta、regionserver和hdfs三者都有哪些不一致?怎么修复?
可以根据下面的异常清单进行异常定位和修复
UnConsistency |
Exception Info |
Repair |
Region |