关闭

修复hbase region hole问题流程

478人阅读 评论(0) 收藏 举报
修复hbase region hole问题流程
1,查询资料用hbase org.jruby.Main check_meta.rb --fix和 hbase hbck -fix会造成数据丢失,考虑其他办法,
   首先考虑用major_compact对该表进行更新看是否会检测到问题并修复,major_compact完成之后未成功
   
2,重新起动hbase集群,是否会进行闭环检测?未成功,但是0.90.4将会带有检测并修复功能

3,考虑通过修改.meta.表,将非闭环改成闭环,测试机一直再用没检测,直接用hbase shell修改.meta.表是不成功的,可以考虑程序,另有metaedit api提供调用


4,使用hbase org.jruby.Main check_meta.rb --fix和 hbase hbck -fix修复工具进行修复,未成功,
   原因是这两个都是通过.regioninfo来重新映射到.meta.表,但是我们的文件本身就是非闭环的所以修复失败
   
5,考虑使用merge将非闭环合并,命令(该命令要关闭hbase集群执行,还需要在hbase-site.xml配置fs.default.name):
hbase org.apache.hadoop.hbase.util.Merge 
Usage: bin/hbase merge <table-name> <region-1> <region-2> 
完成之后成功,
使用hbase hbck检测:
wb_xxx_xxx_xxx is okay.
Number of regions: 2988
0 inconsistencies detected.
Status: OK

wb_xxx_xxx_xxx表修复成功,集群内不再存在hole region
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:108561次
    • 积分:1366
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:105篇
    • 译文:0篇
    • 评论:11条
    最新评论