Hbase数据备份&&容灾方案
程序员文章站
2022-04-09 12:48:32
...
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>
上一篇: 阿里云容器化部署mysql、主从备份