Hbase备份(HBase Backup)的几种方法

执行HBase备份有两种主要的策略:关闭集群进行备份,以及在活动的集群上进行备份。

关闭集群备份

这样做的好处是,NameNode/Master 是地区级服务器,因此不会丢失对存储文件或元数据的任何动态更改。明显的缺点是集群宕机。步骤包括:

  • Stop HBase
  • Distcp

Distcp可以用于将HDFS中的HBase目录的内容复制到另一个目录中的相同集群,也可以复制到另一个集群。

注意:Distcp 可以在这种情况下工作,因为集群已经关闭,并且没有对文件的动态编辑。通常不建议在活动集群上对 HBase 目录中的文件进行解压缩。

  •  恢复(如果需要)

从 HDFS 备份的 hbase 目录通过 distcp 复制到“真正的” hbase 目录。复制这些文件会创建新的 HDFS 元数据,这就是为什么在 HBase 备份时不需要恢复 NameNode 编辑的原因,因为这是特定 HDFS 目录的恢复(通过distcp)。而不是整个 HDFS 文件系统。

实时集群备份-Replication(动态备份)

此方法假设存在第二个集群。

实时集群备份- CopyTable(表为单位操作)

copytable 实用程序可以用于将数据从一个表复制到同一集群中的另一个表,也可以将数据复制到另一个集群中的另一个表。

由于集群已经启动,所以在复制过程中可能会丢失正在编辑的数据。

实时集群备份-Export(集群全量数据)

export 方法将表的内容转储到同一集群上的 HDFS。要恢复数据,将使用 import 实用程序。

由于集群已经启动,所以在导出过程中可能会丢失在编辑的数据。

小结

  1. 不需要 hbase 集群一直处于活动的状态,可以采用第一种方法
  2. hbase 集群不能停止,使用后三种

附录

  1. Hbase备份(HBase Backup)之 Hbase CopyTable
  2. Hbase备份(HBase Backup)之 Hbase Export、Hbase Import

你可能感兴趣的:(大数据,Hbase)