Hbase的訪問方式
1、Native Java API:最常規和高效的訪問方式;
2、HBase Shell:HBase的命令列工具,最簡單的介面,適合HBase管理使用;
3、Thrift Gateway:利用Thrift序列化技術,支援C++,PHP,Python等多種語言,適合其他異構系統線上訪問HBase表資料;
4、REST Gateway:支援REST 風格的Http API訪問HBase, 解除了語言限制;
5、MapReduce:直接使用MapReduce作業處理Hbase資料;
6、使用Pig/hive處理Hbase資料。
常用Hbase Shell的基本用法:
hbase shell常用的操作命令有create,describe,disable,drop,list,scan,put,get,delete,deleteall,count,status等,通過help可以看到詳細的用法。
1、開啟Hbase shell
hadoop@ubuntu:/usr$ hbase shell
2、查詢表List
hbase(main):001:0> list
3、建表(create)
hbase(main):008:0> create 'scores','grad','course'
4、添加資料(表scores,rowkey為zkb 列族grad,列名為”” 值為5)
hbase(main):013:0> put 'scores','zkd','grade:','5'
5、 給zkb這一行的資料的列族course添加一列<math,97> (put)
hbase(main):016:0> put 'scores','zkd','course:math','97'
6、查詢某一條資料(get),根據rowkey尋找
hbase(main):024:0> get 'scores','zkd'
7、查詢多條資料(scan)
格式:scan命令可以指定startrow,stoprow來scan多個row,例如:scan 'user_test',{COLUMNS =>'info:username',LIMIT =>10, STARTROW => 'test',STOPROW=>'test2'}, {}裡邊的是可選項
hbase(main):003:0> scan 'scores',{COLUMNS=>'course:art',LIMIT=>1,STARTROW=>'a',STOPROW=>'z'}
8、刪除記錄(只有一個column)
delete 'scores','1','course:art'
9、刪除rowkey的所有column
deleteall 'scores','1'
10、刪除scores表
hbase(main):004:0> disable 'scores'
hbase(main):005:0> drop 'scores'
參考:
http://www.taobaotest.com/blogs/qa?bid=13871