Hbase数据备份&&容灾方案

Hbase数据备份&&容灾方案

阅读目录

  • 一 、CopyTable
  • 二、Export/Import(使用mapreduce)
  • 三、Snapshot
  • 四、Replication

1.CopyTable

  • 支持时间区间,row 区间 ,改变表名称,改变列族名称,指定是否copy 已经被删除的数据等功能。
  • CopyTable 工具采用scan查询,写入新表时采用put 和delete API.全是基于hbase 的client api 进行读写。
在执行期间要先进行创建新表
./hbase org.apache.hadoop.hbase.mapreduce.CopyTable --new.name=CoprocessorTestNew CoprocessorTest

2.Export/Import

  • Export 可导出数据到目标集群,然后可在目标集群Import 导入数据,Export 支持指定开始时间和结束时间,因此可以做增量备份
  • Export 导出工具 于 CopyTable 一样是依赖hbase 的scan读取数据
    在这里插入图片描述
数据导出

./hbase org.apache.hadoop.hbase.mapreduce.Export CoprocessorTest /coprocessortest.db

数据导入

./hbase org.apache.hadoop.hbase.mapreduce.Import CoprocessorTestNew /coprocessortest.db

3.Snapshot

*Snapshot 即快照的意思,作用于表上,通过配置hbase-site.xml 开启该功能
*可以快速的恢复表至快照指定的状态从而迅速的修复数据(会丢失快照之后的数据)

在这里插入图片描述

配置 hbase-site.xml
<property>
<name>hbase.snapshot.enabled</name>
<value>true</value>
<property>

具体操作

#创建快照名字:CoprocessorTest_snap2
snapshot 'CoprocessorTestNew' ,'CoprocessorTest_snap2'
#清空表数据
truncate 'CoprocessorTestNew'
#删除表
disable 'CoprocessorTestNew'
#恢复快照
restore_snapshot 'CoprocessorTest_snap'
#表生效
enable 'CoprocessorTestNew'

4.Replication

  • 可以通过replication 机制实现hbase集群的主从模式
  • replication 是依赖 WAL日志进行的同步
<property>
  <name>hbase.replication</name>
   <value>true</value>
<property>

在这里插入图片描述

发布了48 篇原创文章 · 获赞 7 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_36168479/article/details/102802346
今日推荐