hbase表导入导出之snapshot快照

  数据迁移
内容纲要

概要说明


面对一些重要数据,很多场景下都需要将数据仓库进行复制,这可以是整个数据库的更广泛级别,也可以是较小的级别。本案例将演示hbase 表数据通过使用snapshot快照的方式迁移的步骤。

使用该方法时源集群和目标集群,如果是开安全的情况,需要先配互信,如果是没有开全的情况,可以直接使用。
该方法在hbase同版本、不同版本之间经测试都可以迁移数据,但最好是在同版本之间迁移。
如果hbase表中有lob类型的字段,不能使用该方法迁移数据。

详细说明


本案例介绍使用 snapshot快照 的方式导入导出 hbase 数据,该方法只需要3步:

  1. 在源集群上对要迁移的 hbase 表生成快照
  2. 将生成的快照文件copy 到目标集群HDFS的 /hyperbase1 路径下
  3. 确保目标集群处于在线状态,在目标集群使用迁移的快照建表

注意:

  1. 以下操作需要准备好TDH客户端,参考:准备TDH客户端环境

1、在源集群上对要迁移的 hbase 表生成快照

  • 下线hbase表

    disable 'hbase_snap'
  • 生成快照

    snapshot 'hbase_snap','snap_qianyi'

2、将生成的快照文件copy 到目标集群HDFS的 /hyperbase1 路径下

  • 将源集群上生成的 snap_qianyi 快照copy到目标集群的hdfs,上传到的hdfs路径是hyperbase的根目录 /hyperbase1
    下面命令可以通过参数 -mappers 指定 mapper数量,加快MapReduce任务。

    hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot snap_qianyi -copy-to hdfs://172.22.33.1:8020/hyperbase1/ -mappers 20

    file

  • 在目标集群hdfs上检查copy的快照文件

    file

3、确保目标集群处于在线状态,在目标集群使用迁移的快照建表

  • 利用snapshot在hbase shell中建表

    clone_snapshot 'snap_qianyi','hbase_snap_qy'
  • 检查建表是否成功
    file

    file

这篇文章对您有帮助吗?

平均评分 5 / 5. 次数: 1

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。