【为什么要用clone的方式复制出一张新表】
有时候因为客户端的不当行为导致了丢失hbase表数据,如果全表恢复(restore_snapshot)则恢复之前必须禁用(disable)该表。但是我不想禁用该表,我想要这张表继续提供服务,怎么办?那么我们就采用克隆快照的方式生成另一张表即可。
【snapshot功能简介】
使用hbase提供的快照(snapshot)功能,不需要停掉hbase集群,不会对Region Server产生影响。导出快照到其他集群也不会对Region Servers产生影响。快照涉及的复制和恢复不包括数据拷贝,只涉及元数据的复制。snapshot为所有HFile文件分别新建引用关系(类似指针),这些元数据就是snapshot.
操作步骤,每一步的命令都整理好,如截图——
步骤1:从源集群中查得hbase根目录
[root@master-1-001 ~]# grep -i -r -C 2 "hbase.rootdir" /usr/hdp/current/hbase-client/conf/
/usr/hdp/current/hbase-client/conf/hbase-site.xml- <property>
/usr/hdp/current/hbase-client/conf/hbase-site.xml: <name>hbase.rootdir</name>
/usr