HBase命令(三) -- 增刪改查


新增

//語法:put <table>,<rowkey>,<family:column>,<value>,<timestamp>
//新增或者覆蓋數據 put '表名','鍵名','列名(不是列簇名)','值'
//指定的列名下單元格有值就覆蓋..沒有值就創建.所以HBase的添加數據和修改數據都是put語句..
//最后的時間戳可以不寫..默認為系統時間,如果要寫..切記不可使用引號括起來

hbase shell> put 'mytable','woshikey','ct:msg','99999999999999'
hbase shell> put 'mytable','woshikey','ct:msg','99999999999999',1462241148

 

刪除 

//刪除某個單元值的值  會刪除所有版本
//語法:delete <table>, <rowkey>,  <family:column> , <timestamp>,必須指定列名
//測試后發現后邊跟時間戳也沒有用,依然會刪除所有版本
hbase shell> delete 'mytable','rowkey','ct:msg'

//刪除行或者整個列簇
//語法:deleteall <table>, <rowkey>,  <family:column> , <timestamp>,可以不指定列名,刪除整行數據
hbase shell> deleteall 'mytable','ct'
hbase shell> deleteall 'mytable'

//清空表數據
//語法: truncate <table>
//等同於 disable -> drop -> create
hbase shell> truncate 'mytable'

查詢   

//掃描表
//語法: scan <table>, {COLUMNS => [ <family:column>,.... ], LIMIT => num}
hbase shell> scan 'mytable'
hbase shell> scan 'mytable',{COLUMNS=>'ct'}
hbase shell> scan 'mytable',{COLUMNS=>'ct',LIMIT=>1}  //返回所屬列簇里每個列的第一個值 
hbase shell> scan 'mytable',{COLUMNS=>'ct:msg',LIMIT=>1}

//獲取表數據
//語法: get <table>,<key>[,<columns>]
hbase shell> get 'mytable','rowkey1'
hbase shell> get 'mytable','rowkey1','ct'
hbase shell> get 'mytable','rowkey1','ct:msg'
hbase shell> get 'mytable','rowkey1',{COLUMN=>'ct'}
hbase shell> get 'mytable','rowkey1',{COLUMN=>'ct:msg'}

//獲取表行數
//語法:count <table>, {INTERVAL => intervalNum, CACHE => cacheNum}
//INTERVAL設置多少行顯示一次及對應的rowkey,默認1000;CACHE每次去取的緩存區大小,默認是10,調整該參數可提高查詢速度
//例如,查詢表t1中的行數,每100條顯示一次,緩存區為500 
hbase shell> count 'mytable', {INTERVAL => 100, CACHE => 500}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM