创建备份映像
对于也使用Apache Phoenix的HBase群集: 包括备份中的SQL系统目录表。在需要还原HBase备份的情况下,对系统目录表的访问可以帮助您恢复Phoenix与还原的数据的互操作性。
运行备份和还原实用程序的第一步是执行完整备份,并将数据存储在与源不同的映像中。至少,您必须执行此操作才能获得基准,然后才能依赖增量备份。
以HBase超级用户身份运行以下命令:
hbase backup create <type> <backup_path>
命令完成运行后,控制台将显示SUCCESS或FAILURE状态消息。SUCCESS消息包括备份ID,备份ID是HBase主机从客户端收到备份请求的Unix时间(也称为Epoch时间)。
记录在成功备份结束时出现的备份ID。如果源群集出现故障,并且您需要使用还原操作恢复数据集,则具有可用的备份ID可以节省时间。
位置命令行参数
#
type
要执行的备份类型:完整备份或增量备份。提醒一下,增量备份需要已完全备份。
BACKUP_PATH
该BACKUP_PATH参数指定来存储备份映像文件系统的完整URI的地方。有效的前缀是hdfs:,webhdfs:,gpfs:和s3fs :
命名命令行参数
#
-t<table_name [,table_name]>
要备份的以逗号分隔的表列表。如果未指定表,则备份所有表。不存在正则表达式或通配符支持; 必须明确列出所有表名。有关对表集合执行操作的详细信息,请参阅备份集(这将在之后的章节中进行介绍)。与-s选项互斥;其中一个命名选项是必需的。
-s<backup_set_name>
根据备份集确定要备份的表。有关备份集的用途和用法,请参阅使用备份集。与-t选项互斥。
-w<number_workers>
(可选)指定将数据复制到备份目标的并行工作器数。备份当前由MapReduce作业执行,因此该值对应于作业将生成的Mapper数。
-b<bandwidth_per_worker>
(可选)指定每个工作线程的带宽,以MB/秒为单位。
-d
(可选)启用“DEBUG”模式,该模式打印有关备份创建的其他日志记录。
-q
(可选)允许指定应在其中执行创建备份的MapReduce作业的YARN队列的名称。此选项有助于防止备份任务从其他高重要性MapReduce作业中窃取资源。
用法示例
$ hbase backup create full hdfs://host5:8020/data/backup -t SALES2,SALES3 -w 3
此命令在HDFS实例中创建两个表SALES2和SALES3的完整备份映像,这两个表在路径/data/backup中的NameNode为host5:8020。w选项指定不超过三个并行工作完成操作。