小表: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...