Hbase-05-备份表数据

Hbase 备份与恢复的发展历程:

  • 从最早使用distcp进行关机全备份
  • 到0.94版本使用copyTable工具在线跨集群备份
  • 到0.98版本推出在线Snapshot备份

在线Snapshot备份具备的功能:

全/增量备份:

  • 业务场景1: 对于重要的业务数据,可以每天备份,以备发生故障时,可以回滚。

  • 业务场景2: 如果集群升级时,建议对重要表做升级。

数据迁移:

可以使用ExportSnapshot功能将快照导出到另一个集群,实现数据的迁移。

  • 业务场景1: 机房迁移

  • 业务场景2:导出到HDFS,再用spark/Hive 的离线分析

在线Snapshot 备份与恢复的用法

在线Snapshot备份与恢复最常用的5个工具:

  • snapshot
  • restore_snapshot
  • clone_snapshot
  • ExportSnapshot
  • delete_snapshot

1.snapshot:

可以为表打一个快照,但并不涉及数据移动,不执行文件复制

> snapshot 'tableName','snapshotName' 

2.restore_snapshot:

用于恢复指定快照,恢复过程会替代原有数据,将表还原到快照点,快照点之后的所有更新将会丢失。用快照恢复数据,它需要先禁用表,再进行恢复。

> restore_snapshot 'snapshotName'

3.clone_snapshot:

可以根据快照恢复出一个新表,恢复过程不涉及数据移动,可以在秒级完成。

> clone_snapshot 'snapshotName','tableName'

4.delete_snapshot:

> delete_snapshot 'snaphotName'

5.ExportSnapshot:

可以将A集群的快照数据迁移到B集群。

hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot
SnapshotName -copy-to hdfs:///srv2:8082/hbase

参考:

https://www.cnblogs.com/bugsbunny/p/7779185.html

https://lihuimintu.github.io/2019/03/24/Introduction-hbase-snapshots/

https://cloud.tencent.com/developer/article/1047834

不要小瞧女程序员
原文地址:https://www.cnblogs.com/shix0909/p/15039125.html