hbase 資料遷移,表count

2021-08-10 00:19:13 字數 1471 閱讀 6291

小表:count

shell > count  'tablename'

大表hbase  row count:

hbase org.apache.hadoop.hbase.mapreduce.rowcounter 'tablename'

2)離線匯出。

匯出hbase org.apache.hadoop.hbase.mapreduce.export id_card_img /export

需先建立表

create 'id_card_img ','img'

匯入hbase org.apache.hadoop.hbase.mapreduce.import id_card_img /export

3)跨集群匯出

1、replication:這個是動態的備份(可以理解為實時備份)

步驟:(1)在old cluster將需要遷移的表屬性進行修改:

disable 'your_table'

alter 'your_table',

enable 'your_table'

(2)開啟new cluster集群的replication,修改hbase-site.xml

hbase.replication

true

(3)新增peer,在new cluster的hbase shell中執行:add_peer '1','old cluster ip:2181:/hbase',啟動replication,執行start_replication

說明:需要兩個集群的hadoop版本一致,否則出現讀寫錯誤

2、copytable:可以在本集群中拷貝一張表,也可以將表拷貝到其他的集群中。

命令:./hbase org.apache.hadoop.hbase.mapreduce.copytable --peer.adr=new cluster ip:2181:/hbase zy_test

說明:(1)拷貝完成,不需要重啟機器,在new cluster中就可以看到該錶;

(2)穩定性還需要考慮,測試過程中遇到乙個問題,拷貝過程中始終都停留在這裡lookedup root region location, 檢視日誌沒有什麼錯誤和相關的資訊。

3、export and import

步驟:(1)在old cluster上執行:./hbase org.apache.hadoop.hbase.mapreduce.export test hdfs://new cluster ip:9000/zhuangyang/test

(2)在new cluster上執行:./hbase org.apache.hadoop.hbase.mapreduce.import test hdfs://new cluster ip:9000/zhuangyang/test

說明:(1)一定要寫全路徑,不能寫相對路勁;

(2)在import前,需要將表事先在new cluster中建立好.

Hbase 大表快速count

第一種比較簡單,但是只適合小表進行count 1.count命令 最直接的方式是在hbase shell中執行count的命令可以統計行數。html view plain copy hbase count t1 hbase count t1 interval 100000 hbase count t...

hbase資料遷移

說明 網上眾多千篇一律的版本都說要用到乙個add table.rb的檔案,可是我的版本根本hbase下就不存在這個檔案。1.把資料表test從hbase下拷出 hadoop dfs get hbase test 2.檔案放到新集群的系統上。3.檔案拷入新的hadoop集群hbase下 hadoop ...

Hbase資料遷移

1.將hbase表資料匯出到hdfs hbase org.apache.hadoop.hbase.mapreduce.driver export tablename data export tablename 2.將hdfs資料獲取到本地 hadoop fs get data export tabl...