博客园  :: 首页  :: 联系 :: 管理

基于Azure blob storage T级别HBase表恢复

Posted on 2017-01-14 11:48  天戈朱  阅读(445)  评论(0编辑  收藏  举报

     为减少Hbase集群压力,提高性能,我们将HBase库中的数据移到另外的存储,下面记录当我需要对数据进行计算时,数据恢复的过程

目录:

  •  Azure storage explorer 工具
  • 数据复制
  • 元数据修复
  • 测试验证

Azure Storage Explorer工具


  • 免费工具下载地址:http://storageexplorer.com/
  • 本地安装后,连接至Azure存储,如下图:
  • 说明:
    1. 源存储和目标存储所属同一区域时,复制性能更佳,同时注意一下,我使用的storage explorer比较low的地方,copy时没有进度条
    2. 在目标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} (如下图,读写正常)