为减少Hbase集群压力,提高性能,我们将HBase库中的数据移到另外的存储,下面记录当我需要对数据进行计算时,数据恢复的过程
目录:
- Azure storage explorer 工具
- 数据复制
- 元数据修复
- 测试验证
Azure Storage Explorer工具
- 免费工具下载地址:http://storageexplorer.com/
- 本地安装后,连接至Azure存储,如下图:
- 说明:
- 源存储和目标存储所属同一区域时,复制性能更佳,同时注意一下,我使用的storage explorer比较low的地方,copy时没有进度条
- 在目标hbase集群中,将完整的目录copy过去后,使用hbase hbck 修复命令如果目标集群中表不存在时,修复命令会自动创建表
数据复制
- 说明:完整目录copy,使用工具上的复制、粘贴即可,复制的性能还可以
- BMS: 16:30-16:40 耗时10分钟,数据量大小如下:
- Power:17:10-17:47 耗时37分钟,数据量大小:
- 文件夹重命名:工具会新建文件夹,同时将源文件内容copy至新的文件夹下,然后删除源文件夹,数据量大的话,比较费劲
元数据修复
- 数据复制完成后,进入hbase安装目录,进行元数据修复,快捷修复命令:hbase hbck -repair -ignorePreCheckPermission
- 修复成功后,如下图:
测试验证
- 进入hbase shell 命令模式
- 命令:list (如下图,说明表修复正常)
- 命令: scan 'TerminalData',{LIMIT=>1} (如下图,读写正常)