hbase0.98暴力数据迁移方案

公司测试环境使用三台机器搭建了一个简单的集群,内存小,网速慢而且还是虚机.但是测试的时候还是保存了大量的数据.但是由于一些其他原因,造成数据只能在测试环境生成,不能在线上直接生成数据.所以就需要把数据从测试环境把数据导入到线上的HBase环境

    刚开始使用了HBase的Export与Import 的方式来做导出.

    好吧,虚机几百万的数据,总是失败..一直都是在报错误,找了好久都没找到原因.没办法只有想别的方法.

    折腾了两天搞定了导出的方式.


    1.    关闭HBase集群.

    2.    Hadoop上找到要导出的HBase表路径  如: 我的路径为:  /hbase/data/default/test

        hbase0.98暴力数据迁移方案_第1张图片

    3.    从Hadoop把项目导入到本地环境

        

    4.    然后通过硬盘或者其他把数据发送到另一套环境的hadoop HBase文件目录下. hbase/dta/default/test/   (HBase环境同样需要关闭,)

    5.    如果另一套也存在该表..(那我就不知道了,我当时是把那套环境的数据导出的.)

    6.    打开Hbase,现在就就可以在HBase shell命令下看到该表了.

    7.    执行    

hbase hbck -fixMeta

    8.    如果依然无法操作表.那么就执行

    

hbase hbck -fixAssignments(重新分区)

  

  大功告成    !


你可能感兴趣的:(hbase0.98暴力数据迁移方案)