您好,登錄后才能下訂單哦!
本篇內容主要講解“HBase shell有哪些作用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“HBase shell有哪些作用”吧!
1、list:列出所有表;
2、desc:查看表的屬性信息
3、put:類似mysql的insert語句,案例如下:
# 向命名空間ns1下表t1的rowkey為r1的列c1添加數據 hbase> put 'ns1:t1', 'r1', 'c1', 'value' # 向默認命名空間下表t1的rowkey為r1的列c1添加數據 hbase> put 't1', 'r1', 'c1', 'value' # 向默認命名空間下表t1的rowkey為r1的列c1添加數據,并設置時間戳為ts1 hbase> put 't1', 'r1', 'c1', 'value', ts1 # 向默認命名空間下表t1的rowkey為r1的列c1添加數據,并設置時間戳為ts1,并設置屬性 hbase> put 't1', 'r1', 'c1', 'value', ts1, {ATTRIBUTES=>{'mykey'=>'myvalue'}} #引用對象的用法 t.put 'r1', 'c1', 'value', ts1, {ATTRIBUTES=>{'mykey'=>'myvalue'}}
4、scan:掃描表信息
# 掃描命名空間hbase下的meta表,顯示出meta表的所有數據 hbase> scan 'hbase:meta' # 掃描命名空間hbase下的meta表的列族info的列regioninfo,顯示出meta表的列族info下的regioninfo列的所有數據 hbase> scan 'hbase:meta', {COLUMNS => 'info:regioninfo'} # 掃描命名空間ns1下表t1的列族'c1'和'c2'。顯示出命名空間ns1下表t1的列族'c1'和'c2'的所有數據 hbase> scan 'ns1:t1', {COLUMNS => ['c1', 'c2']} # 掃描命名空間ns1下表t1的列族'c1'和'c2'。顯示出命名空間ns1下表t1的列族'c1'和'c2',且只顯示前10個rowkey的數據。 hbase> scan 'ns1:t1', {COLUMNS => ['c1', 'c2'], LIMIT => 10} # 掃描命名空間ns1下表t1的列族'c1'和'c2'。顯示出命名空間ns1下表t1的列族'c1'和'c2',且只顯示從rowkey=“xyz”開始的前10個rowkey的數據。 hbase> scan 'ns1:t1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'} # 掃描默認命名空間下表t1的列族c1時間戳從'1303668804'到'1303668904'的數據 hbase> scan 't1', {COLUMNS => 'c1', TIMERANGE => [1303668804, 1303668904]} # 反向顯示表t1的數據 hbase> scan 't1', {REVERSED => true} # 過濾顯示表t1的數據 hbase> scan 't1', {FILTER => "(PrefixFilter ('row2') AND (QualifierFilter (>=, 'binary:xyz'))) AND (TimestampsFilter ( 123, 456))"} # RAW為true,顯示出表t1的所有數據,包括已經刪除的 hbase> scan 't1', {RAW => true, VERSIONS => 10} # 表t1的引用的掃描 hbase> t11 = get_table 't1' hbase> t11.scan
5、get
#得到命名空間ns1下表t1的rowkey為r1的數據 hbase> get 'ns1:t1', 'r1' #得到默認命名空間下表t1的rowkey為r1的數據 hbase> get 't1', 'r1' #得到默認命名空間下表t1的rowkey為r1,時間戳范圍在ts1和ts2之間的數據 hbase> get 't1', 'r1', {TIMERANGE => [ts1, ts2]} #得到默認命名空間下表t1的rowkey為r1的c1列的數據 hbase> get 't1', 'r1', {COLUMN => 'c1'} #得到默認命名空間下表t1的rowkey為r1的c1,c2,c3列的數據 hbase> get 't1', 'r1', {COLUMN => ['c1', 'c2', 'c3']} #得到默認命名空間下表t1的rowkey為r1的c1列,時間戳為ts1的數據 hbase> get 't1', 'r1', {COLUMN => 'c1', TIMESTAMP => ts1} #得到默認命名空間下表t1的rowkey為r1的c1列,時間戳范圍為ts1到ts2,版本數為4的數據 hbase> get 't1', 'r1', {COLUMN => 'c1', TIMERANGE => [ts1, ts2], VERSIONS => 4} #應用對象的用法 hbase> t.get 'r1' hbase> t.get 'r1', {TIMERANGE => [ts1, ts2]} hbase> t.get 'r1', {COLUMN => 'c1'} hbase> t.get 'r1', {COLUMN => ['c1', 'c2', 'c3']} hbase> t.get 'r1', {COLUMN => 'c1', TIMESTAMP => ts1} hbase> t.get 'r1', {COLUMN => 'c1', TIMERANGE => [ts1, ts2], VERSIONS => 4} hbase> t.get 'r1', {COLUMN => 'c1', TIMESTAMP => ts1, VERSIONS => 4}
6、count 'hubble_uid'
到此,相信大家對“HBase shell有哪些作用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。