HBase跨集群迁移调研方案

HBase跨集群迁移调研方案回顾

迁移目的

HBase跨集群平滑迁移

方案

方案一

双写:replication

历史数据:Snapshot——>exportSnapshot——>clone_snapshot——>copyTable

方案二

双写:replication

历史数据:Snapshot——>exportSnapshot——>bulkload

操作命令

snapshot

#制作snapshot
hbase> snapshot 'myTable', 'myTableSnapshot-122112'
#显示所有snapshot
hbase> list_snapshots
#发送snapshot到其他集群
$ bin/hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot MySnapshot -copy-to hdfs://srv2:8082/hbase -mappers 16 -bandwidth 200
#在目标集群clone snapshot
hbase> clone_snapshot 'myTableSnapshot-122112', 'myNewTestTable'
#在目标机还原snapshot
hbase> disable 'myTable'
hbase> restore_snapshot 'myTableSnapshot-122112'
hbase> enable 'myTable'
#目标集群copy table
$ bin/hbase org.apache.hadoop.hbase.mapreduce.CopyTable --starttime=1265875194289 --endtime=1265878794289 --peer.adr=server1,server2,server3:2181:/hbase --families=myOldCf:myNewCf,cf2,cf3 TestTable
#目标机器执行bulkload snapshot
bin/hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles <hdfs://storefileoutput> <tablename>

replication

#Add a new replication peer which serial flag is true
hbase> add_peer '1', CLUSTER_KEY => "server1.cie.com:2181:/hbase", SERIAL => true
#Set a replication peer’s serial flag to true(数据顺序)
hbase> set_peer_serial '1', true
#验证replication数据
$ HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase classpath` "${HADOOP_HOME}/bin/hadoop" jar "${HBASE_HOME}/hbase-mapreduce-VERSION.jar" verifyrep --starttime=<timestamp> --endtime=<timestamp> --families=<myFam> <ID> <tableName>

优缺点

方案一:开启replication,snapshot需要先clone到新表,然后再copyTable到旧表

缺点:restore_snapshot会覆盖replication新数据;通过MR执行,速度慢,不如bulkload执行效率高
优点:表级操作
方案二:开启replication,snapshot通过bulkload到数据表,不会覆盖新数据

优点:导入数据数据速度非常快;在新版本中已经支持整表bulkload方案(CDH-6.0及以上,hBase2.0)
缺点:旧版本不支持整表bulkload方案,需要代码添加功能;再整表bulkload时默认最大HFILE个数32,需要根据需要调整修改。参数:
hbase.mapreduce.bulkload.max.hfiles.perRegion.perFamily

最终方案

目标

采用方案:方案二:

通过bulkload整表导入从集群导入的snapshot快照,完成数据迁移;

目标:平滑迁移,双写基础上,尽可能简洁操作,流程短,效率高;

CDH如何支持整表bulkload操作

参考:https://www.jianshu.com/p/612a8f4ad275

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本周六晚上八点,在dbaplus进行了一场关于HBase跨机房迁移的分享,通过这次分享,给大家系统地介绍了10+p...
    飞鸿无痕阅读 3,196评论 4 8
  • 随着最后一台设备的退还,标志着整个10P+的HBase数据迁移完成。目前新集群已经在新机房平稳运行2个月,从监控图...
    飞鸿无痕阅读 2,897评论 17 14
  • 一、背景 现kylin作为数据源提供报表支撑的场景持续增多,经常出现查询慢的问题,为提高hbase支撑的稳定性,同...
    烂泥_119c阅读 600评论 0 0
  • 版权声明:本文为博主原创文章,未经博主允许不得转载。https://www.jianshu.com/p/6be82...
    Moon_魔宽阅读 1,753评论 0 5
  • 经常听人说“不做作业母慈子孝,一做作业鸡飞狗跳”,一直觉得形容得有些夸张,不以为然。直到自己亲自辅导孩子作业,那场...
    翰默生香阅读 359评论 0 3