1. 描述hbase的scan和get功能以及實現的異同
HBase的查詢實現只提供兩種方式: 1、按指定RowKey獲取唯一一條記錄,get方法(org.apache.hadoop.hbase.client.Get) 2、按指定的條件獲取一批記錄,scan方法(org.apache.hadoop.hbase.client.Scan) 實現條件查詢功能使用的就是scan方式
2. hbase協處理器,怎麼判斷是否是更新
插入之後,在通過setMaxVersions()方法就可以把所有的版本都取出來了
Get get = new Get(startRow);
get.setMaxVersions();
Result result = table.get(get);
List<KeyValue> list = result.list();
for(final KeyValue v:list){
logger.info("value: "+ v+ " str: "+Bytes.toString(v.getValue()));
}
這樣就明了了
3. 如何獲取hbase數據查詢 語句
get命令和HTable類的get()方法用於從HBase表中讀取數據。使用 get 命令,可以同時獲取一行數據。它的語法如下:
get 』<table name>』,』row1』
下面的例子說明如何使用get命令。掃描emp表的第一行。
hbase(main):012:0> get 'emp', '1'
COLUMN CELL
personal : city timestamp=1417521848375, value=hyderabad
personal : name timestamp=1417521785385, value=ramu
professional: designation timestamp=1417521885277, value=manager
professional: salary timestamp=1417521903862, value=50000
4 row(s) in 0.0270 seconds
讀取指定列
下面給出的是語法,使用get方法讀取指定列。
hbase>get 'table name', 『rowid』, {COLUMN => 『column family:column name 』}
下面給出的示例,是用於讀取HBase表中的特定列。
hbase(main):015:0> get 'emp', 'row1', {COLUMN=>'personal:name'}
COLUMN CELL
personal:name timestamp=1418035791555, value=raju
4. hbase shell的get
輸入jar包好像沒見過