注意:

在 Oracle Big Data Service 中创建 HBase 快照备份和还原

简介

HBase 快照支持跨集群高效备份和恢复表。本教程演示如何在源集群中创建快照,将其导出到 Oracle Cloud Infrastructure (OCI) 存储桶,以及在目标集群中还原快照。

目标

先决条件

任务 1:在源群集中创建表并填充数据

  1. 使用以下命令创建表并添加一些数据。

    hbase> create 'table1', 'cf1'
    hbase> put 'table1', '1', 'cf1:age', '30'
    hbase> put 'table1', '2', 'cf1:name', 'John'
    
  2. 使用以下命令验证数据是否已正确填充。

    hbase> scan 'table1'
    

任务 2:获取表的快照

  1. 使用以下命令为表创建快照。

    hbase> snapshot 'table1', 'table1-snapshot'
    
  2. 使用以下命令列出要确认的快照。

    hbase> list_snapshots
    

任务 3:将快照导出到 OCI 存储桶

  1. 使用以下命令将快照导出到 OCI 存储桶。

    hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot table1-snapshot -copy-to oci://<bucket>@<namespace>/<path> -mappers 16
    
  2. 使用以下命令验证快照文件是否已复制。

    hadoop fs -ls oci://<bucket>@<namespace>/<path>/
    

任务 4:将快照导入目标集群

  1. 使用以下命令将快照从 OCI 存储桶复制到目标集群。

    hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot table1-snapshot -copy-from oci://<bucket>@<namespace>/<path> -copy-to /apps/hbase/data -mappers 16
    
  2. 使用以下命令确认快照在目标群集中可用。

    hbase> list_snapshots
    

任务 5:在目标群集中还原快照

  1. 使用以下命令从快照恢复表。

    hbase> restore_snapshot 'table1-snapshot'
    
  2. 使用以下命令扫描恢复的表以验证数据。

    hbase> scan 'table1'
    

故障排除和技巧

后续步骤

考虑使用 Oozie 或 cron 作业自动调度定期快照导出到 OCI 存储桶。

致谢

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心