有一個很簡單的需求,需要復制hbase里面的一張表,給它一個新的表名。這里記錄一下如何通過快照來進行表的復制:
步驟1:登陸hbase shell
[root@hmaster ~]# hbase shell 2019-03-06 15:18:50,921 INFO [main] Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available HBase Shell; enter 'help<RETURN>' for list of supported commands. Type "exit<RETURN>" to leave the HBase Shell Version 0.98.13-hadoop2, r8f54f8daf8cf4d1a629f8ed62363be29141c1b6e, Wed Jun 10 23:01:33 PDT 2015 hbase(main):001:0>
步驟2:創建表(H_DSE_TRACE)的快照
hbase(main):003:0> snapshot 'H_DSE_TRACE' , 'SNAPSHOT_H_DSE_TRACE' 0 row(s) in 0.7180 seconds hbase(main):004:0> list_snapshots SNAPSHOT TABLE + CREATION TIME SNAPSHOT_H_DSE_TRACE H_DSE_TRACE (Wed Mar 06 15:19:48 +0800 2019) 1 row(s) in 0.0320 seconds => ["SNAPSHOT_H_DSE_TRACE"]
步驟3:從快照克隆一個表(H_DSE_TRACE_2)
hbase(main):005:0> clone_snapshot 'SNAPSHOT_H_DSE_TRACE','H_DSE_TRACE_2' 0 row(s) in 0.8180 seconds
好了,到這里新的表已經克隆出來了~~