Hbase - hbase hbck介绍
原文地址:https://bbs.huaweicloud.com/blogs/353332
HBaseFsck(hbck)是一种命令行工具,可检查hbase集群的region一致性和表完整性的问题,同时可以修复损坏的集群数据
hbase hbck [options]
options:
- -fixAssignments
- -fixMeta
- -fixHdfsHoles
- -fixHdfsOrphans
- -fixTableOrphans
- -fixhdfsOverlaps
- -sidelineBigOverlaps -maxOverlapsToSideline <N>
- -fixReferenceFiles
- -repair
-fixAssignments
使用场景:region不在线
hbck报错:
ERROR: Region { meta => null, hdfs => hdfs://hacluster/hbase/data/default/xxxxxxxx/xxxxxxxxxxxxx, deployed => , replicaId => 0 } on HDFS, but not listed in hbase:meta or deployed on any region server
Tips:修复前,可以先检查下表region是否连续,如果连续,执行命令修复后,可能出现overlaps问题。
-fixMeta
使用场景:Meta表数据异常
hbck报错:
ERROR: Region { meta => XXXXXXXXXXX,4150,1634403123676.xxxxxxxxxxxxxxxxxxx., hdfs => null, deployed => , replicaId => 0 } found in META, but not in HDFS or deployed on any region server.
Tips:命令一般可以结合-fixAssignments一起使用:hbase hbck -fixMeta -fixAssignments tableName
-fixHdfsHoles
使用场景:Region不连续,中间存在空洞
hbck报错:
ERROR: There is a hole in the region chain between 5980 and 6000. You need to create a new .regioninfo and region dir in hdfs to plug the hole.
Tips:执行修复前,先查看是否有region不在线,如果有则先使用-fixAssignments修复
-fixHdfsOrphans
使用场景:表regioninfo丢失
hbck报错:
ERROR: Orphan region in HDFS: Unable to load .regioninfo from table XXXXXX
in hdfs dir hdfs://hacluster/hbase/data/default/ XXXXXX /xxxxxxxxxxxxxxx! It may be an invalid format or version file. Treating as an orphaned regiondir.
Tips:丢块、人为删除,都可能导致该问题,多修复几次。
-fixTableOrphans
使用场景:表tableinfo丢失
hbck报错:
TableInfoMissingException: No table descriptor file under hdfs://hacluster/hbase/data/default/XXXXXXX
Tips:丢块、人为删除,都可能导致该问题,一般都会修复失败,可以在相同版本集群建同名表,复制tableinfo进行恢复。
-fixhdfsOverlaps
使用场景:Region之间出现重叠的情况
hbck报错:
ERROR: (region XXXXXX,994,1599460846542.xxxxxxxxxx.) Multiple regions have the same startkey: 994
ERROR: (region XXXXXX,994,1599543035805.xxxxxxxxxx.) Multiple regions have the same startkey: 994
ERROR: (regions XXXXXX,994,1599543035805.xxxxxxxxxx. and XXXXXX,998,1571500798247.xxxxxxxxxx.) There is an overlap in the region chain.
Tips:一般一次修复不成功,需要多执行几次。该修复可能影响业务(修复过程,会把重叠的region下线,合并为1个region)。
-sidelineBigOverlaps -maxOverlapsToSideline <N>
使用场景:
sidelineBigOverlaps:修复overlap问题过程中,允许跟其他region重叠次数最多的一些region不参与(修复后,可以把没有参与的数据通过bulk load加载到相应的region;maxOverlapsToSideline修复overlap问题过程中,一组里最多允许多少个region不参与
hbck报错:暂无
Tips:使用命令 hbase hbck -repair -sidelineBigOverlaps -maxOverlapsToSideline 10 tableName
-fixReferenceFiles
使用场景:修复残留的reference文件
hbck报错:
ERROR: Found lingering reference file hdfs://hacluster/hbase4/data/default/XXXXXX/xxxxxxxxxx/F/3f7f9c436845499eaea025965d6528e3.75b81cdf8bd8e218f581dc274423be1c
Tips:暂无
-repair
使用场景:该命令是多个命令的集合,包含:
- -fixAssignments
- -fixMeta
- -fixHdfsHoles
- -fixHdfsOrphans
- -fixHdfsOverlaps
- -fixVersionFile
- -sidelineBigOverlaps
- -fixReferenceFiles
- -fixTableLocks
- –fixOrphanedTableZnodes
hbck报错:暂无
Tips:一般overlap问题,可以简单粗暴的直接repair
常用修复命令
# 检查hbase是否不一致
hbase hbck>/tmp/hbck.out
tail /tmp/hbck.out
# hbase hbck 常规修复
hbase hbck -fixAssignments -fixMeta -fixHdfsHoles -fixHdfsOverlaps > /tmp/hbck.out
# hbase hbck repair修复
hbase hbck -repair
# dstool修复(暂略)
未完待续……
Hbase - hbase hbck介绍的更多相关文章
- HBase shell 命令介绍
HBase shell是HBase的一套命令行工具,类似传统数据中的sql概念,可以使用shell命令来查询HBase中数据的详细情况.安装完HBase之后,如果配置了HBase的环境变量,只要在sh ...
- Hbase记录-ZooKeeper介绍
ZooKeeper是一个分布式协调服务来管理大量的主机.协调和管理在分布式环境的一个服务是一个复杂的过程.ZooKeeper 简单解决了其结构和API这个问题.ZooKeeper允许开发人员能够专注于 ...
- hbase 修复 hbck
hbase 修复使用hbck 新版本的 hbck 可以修复各种错误,修复选项是: (1)-fix,向下兼容用,被-fixAssignments替代 (2)-fixAssignments,用于修复reg ...
- HBase基本知识介绍及典型案例分析
本次分享的内容主要分为以下五点: HBase基本知识: HBase读写流程: RowKey设计要点: HBase生态介绍: HBase典型案例分析. 首先我们简单介绍一下 HBase 是什么. HBa ...
- HBase的TTL介绍
1. 定义 TTL(Time to Live) 用于限定数据的超时时间. 2.原理 以Column Family的TTL为例介绍, hbase(main):001:0> desc 'wxy:te ...
- HBase Snapshot功能介绍
HBase在0.94之后提供了Snapshot功能,一个snapshot其实就是一组metadata信息的集合,它可以让管理员将表恢复到以前的一个状态.snapshot并不是一份拷贝,它只是一个文件名 ...
- 【转】HBase 超详细介绍
---恢复内容开始--- http://blog.csdn.net/frankiewang008/article/details/41965543 1-HBase的安装 HBase是什么? HBase ...
- HBase MVCC 机制介绍
关键词:MVCC HBase 一致性 本文最好结合源码进行阅读 什么是MVCC ? MVCC(MultiVersionConsistencyControl , 多版本控制协议),是一种通过数据的多版本 ...
- HBase总结(十一)hbase Java API 介绍及使用示例
几个相关类与HBase数据模型之间的对应关系 java类 HBase数据模型 HBaseAdmin 数据库(DataBase) HBaseConfiguration HTable 表(Table) H ...
- hbase Java API 介绍及使用示例
几个相关类与HBase数据模型之间的对应关系 java类 HBase数据模型 HBaseAdmin 数据库(DataBase) HBaseConfiguration HTable 表(Table) ...
随机推荐
- 开源USB协议栈漏洞挖掘
文章首发于 https://forum.butian.net/share/169 目录 起因 漏洞挖掘 sboot_stm32 tinyusb dfu_moded_control_xfer_cb 越界 ...
- .NET Core 异常(Exception)底层原理浅谈
中断与异常模型图 内中断 内中断是由 CPU 内部事件引起的中断,通常是在程序执行过程中由于 CPU 自身检测到某些异常情况而产生的.例如,当执行除法运算时除数为零,或者访问了不存在的内存地址,CPU ...
- 云数据备份 | CDN 日志备份最佳实践
前言 内容分发网络(Content Delivery Network,CDN),是在现有 Internet 中增加的一层新的网络架构,可以有效降低用户访问延迟,提升可用性. CDN 按照小时粒度对 ...
- Electron 通信
1.web向主进程发送消息 (单项) 使用ipcMain.on 监听事件 const hanle = (event, data) => { console.log(event) console. ...
- Delon ACL
Delon ACL delon ACL Alain acl 路由守卫 使用 ACLService 核心是 ACLService,See:https://github.com/ng-alain/delo ...
- 再次探讨 WinForms 多线程开发
再次探讨 WinForms 多线程开发 WinForms 已经开源,您现在可以在 GitHub 上查看 WinForm 源代码. 正好有人又讨论到在 WinFroms 环境下的多线程开发,这里就再整理 ...
- 【MyBatis】学习笔记15:通过分步查询解决一对多或多对多问题
目录 对象 SmbmsProvider.java SmbmsBill.java 接口 providerMapper.java orderMapper.java 映射文件 providerMapper. ...
- spring boot 启动原理解析
https://www.cnblogs.com/xiaoxi/p/7999885.html 我们开发任何一个Spring Boot项目,都会用到如下的启动类 1 @SpringBootApplicat ...
- Datawhale 2025冬令营“嬛嬛,我来啦!”😘
Datawhale2025冬令营 Datawhale 2025 AI冬令营链接:https://www.datawhale.cn/activity/110/21/76?rankingPage=1 赠送 ...
- AutoCAD 2020中文版建筑设计从入门到精通下载链接
AutoCAD 2020中文版建筑设计从入门到精通下载链接 链接:https://pan.baidu.com/s/1EgFHOSKfPrr9Xdp3bNA-pA或https://pan.baidu.c ...